黑马程序员技术交流社区
标题:
为什么成员内部类里不能定义静态的属性和方法?
[打印本页]
作者:
曾_强
时间:
2012-4-28 12:54
标题:
为什么成员内部类里不能定义静态的属性和方法?
一个小问题。为什么成员内部类里不能定义静态的属性和方法?
静态对象的加载模式是默认加载,是不是可以将内部类也设置为默认加载?
作者:
周海诚
时间:
2012-4-28 13:56
静态的对象,在内存中实默认实例化的,
在加载的时候就会存放到内存中。
也就是可以直接调用而不需要手动实例化。
首先内部的静态类他是不能直接被实例化的。
你必须实例化外部类才能实例化它。
而外部类不是默认加载的,他只有在手动实例化之后才有内存分配。
这时问题出现了。既然静态对象是默认加载,
那么静态内部类应该先于外部类被加载到内存中。
那么这是又和我们之前的一个结论相反,
首先内部的静态类他是不能直接被实例化的。
你必须实例化外部类才能实例化它。
所以这种写法是错误的。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2