黑马程序员技术交流社区
标题:
java中成员内部类内为什么不允许有任何静态声明
[打印本页]
作者:
刘峰
时间:
2012-3-5 18:45
标题:
java中成员内部类内为什么不允许有任何静态声明
java中成员内部类内为什么不允许有任何静态声明,求解
作者:
种法腾
时间:
2012-3-5 19:58
内部类可以有静态声明,那么这个内部类必须声明成static,
作者:
黄方
时间:
2012-3-5 20:14
额,看了你的问题啦,是这样的:
成员内部类 之所以叫做成员 就是说他是类实例的一部分 而不是类的一部分 结构上来说 他和你声明的成员变量是一样的地位 一个特殊的成员变量 而静态的变量是类的一部分和实例无关 你若声明一个成员内部类 让他成为主类的实例一部分 然后又想在内部类声明和实例无关的静态的东西 你让JVM情何以堪啊 若想在内部类内声明静态字段 就必须将其内部类本身声明为静态 静态内部类里面的字段 就算没有static修饰符也是静态的
作者:
王亚男
时间:
2012-3-5 20:24
如果成员内部类有static成员存在的话,类也得声明static。不然的话,类加载进内存的同时,static就在了。先有了内部类才有的内部类成员,如果内部类的成员是static的,但内部类却不是,那成员也没办法先存在。 个人理解。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2