码迷,mamicode.com
首页 > 其他好文 > 详细

静态变量的加载问题

时间:2015-07-18 22:52:00      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:

经常会有疑问,一个类的静态变量到底会在什么时候真正创建

今天实验了下,得出如下结论。

一个类的静态变量只会在该类被实例化,或者该类调用了静态变量、静态方法的时候创建。如果该类在其他类中只是定义变量,没有实际操作,静态变量也不会被实例化。


对于单例的饿汉模式,以前一直以为只要容器中有该类,就会创建单例对象,实际上是错误的。如果一个单例类仅仅有创建对象和操作该对象属性的操作,此时用饿汉模式非常好,因为它线程安全。

如果单例类有其他静态方法的操作,就有可能实例化了不想实例化的对象,造成该资源浪费。

此时可以用双重检查,或者内部类的方式构造性能好的单例



静态变量的加载问题

标签:

原文地址:http://my.oschina.net/everyDay111/blog/480195

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!