日期:2014-05-20  浏览次数:20571 次

java 对静态初始化的疑问!!!
《thinking in java》中这样说,“静态初始化只有在必要的时刻才会进行”
我觉得好别扭,因为像静态代码块不是在类被第一次调用的时候就执行吗?
而且,执行构造器之前最先都是先初始化静态成员的。
好矛盾!
怎么感觉自己越来越菜!!!

------解决方案--------------------
建议把这本书扔了,真的!
------解决方案--------------------
你刚入门把,,,建议入门别看这本书,很打击你信心的,找一些所谓的“烂书”看吧,很实用,很容易入门,然后再去看些所谓的“好书”,也就是你现在看的这本了。

------解决方案--------------------
http://topic.csdn.net/u/20120913/15/e0cc1668-a9ff-4ed4-b529-4e651d0d9dde.html


------解决方案--------------------
关于这本书,我同意 火龙果 的观点,扔了,“好书”只是人云亦云得出的结果,只能说广告营销做的很好

探讨

你刚入门把,,,建议入门别看这本书,很打击你信心的,找一些所谓的“烂书”看吧,很实用,很容易入门,然后再去看些所谓的“好书”,也就是你现在看的这本了。

------解决方案--------------------
同意楼主的观点,,“静态初始化只有在必要的时刻才会进行”:只有在第一个对象被创建(或者第一次访问静态数据)的时候,它们才会被初始化。此后,静态对象不会再次被初始化。 


------解决方案--------------------
了解一下java的内存工作模式,可能对你大有帮助
------解决方案--------------------
《thinking in java》中这样说,“静态初始化只有在必要的时刻才会进行”

静态初始化是在class被加载的时候进行的!
------解决方案--------------------
这种纯理论的书,等你有一定的代码量后再看吧。