类System.out是个static final对象,请问这个对象是在什么时候生成的呢?哪位大牛给个详细些的解释,谢谢!我翻了一下 深入java虚拟机 没有找到。ps:就这些分了,不好意思了。

解决方案 »

  1.   

    从理论上来说,你有某个类用到了另一个类,那么当你这个类被加载时,另一个类的也被加载,此时另一个类的static对象被生成。所以在你用到System的类被加载时,System就会被加载。但实际上lang包是java的缺省包,所以当JVM启动时,缺省包就会被加载,此时该包的static对象都会被生成。仅供参考
      

  2.   

    看一下孙卫琴写的那本 java面向对象  里面解释的很清楚 有好几种情况