A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 ﹎◇waiting﹎ 于 2012-8-1 13:49 编辑

求详解:为什么成员内部类不可以有静态属性?

4 个回复

倒序浏览
这个问题度娘能帮你解释的很清楚,
简单的说一下吧:因为成员内部类不是静态的,只有静态的内部类才可以有,如果你的内部类为静态的话,这样是没法进行调用的,并且被static修饰的成员属性和方法 都是优先于对象存在的。
回复 使用道具 举报
本帖最后由 郑庆伟 于 2012-7-2 19:53 编辑

静态内部类中可以有静态成员。而且只能访问外部类中被static修饰的成员,非静态的内部类中如果静态方法或者变量编译不会通过。
被static修饰的成员 都是比对象先存在的。
这样就没办法调用了。
回复 使用道具 举报
楼主给出的问题不是很准确。我给你说一下内部类的一些注意。
1:当内部类在成员位置上时,就可以被成员修饰符所修饰。当然包括static修饰符。
(1)当内部类中定义了静态成员,该内部类必须是static修饰。
(2):当外部类中的静态方法访问内部类时,内部类必须是静态的。
2:内部类定义在局部时,不可以被成员修饰符修饰。
因为成员修饰符只能修饰成员变量和成员函数,不修饰局部变量和局部函数。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马