java单例模式和静态方法有什么区别
2016-09-04
展开全部
找到知乎一个很好的答案:
两者占内存不一样吧。
没记错的话,类加载的时候都要加载类的定义;执行方法的时候都要占用栈;但是单例需要在堆里面new一个内存空间出来,静态方法ms不用。
我的习惯用法是不需要依赖于其它类或资源时,用静态方法,这时就是一个面向过程的函数而已;如果需要依赖其它类的实例,或者需要某些资源时,用单例。
两者占内存不一样吧。
没记错的话,类加载的时候都要加载类的定义;执行方法的时候都要占用栈;但是单例需要在堆里面new一个内存空间出来,静态方法ms不用。
我的习惯用法是不需要依赖于其它类或资源时,用静态方法,这时就是一个面向过程的函数而已;如果需要依赖其它类的实例,或者需要某些资源时,用单例。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询