可能重复:
Why does Java prohibit static fields in inner classes?
我对内部类的访问规范感到非常困惑。请向我解释私有和受保护的内部类和嵌套类。 我想知道为什么不能在静态内部类中声明非静态成员。
非常感谢。
抱歉......我错了。我想知道为什么静态成员不能在非静态内部类中声明..我反向询问..抱歉
答案 0 :(得分:0)
希望这能回答你的一些问题吗?
http://docs.oracle.com/javase/tutorial/java/javaOO/nested.html
但是你错了,你可以在静态嵌套类中声明非静态成员,这里声明为static的类是为了将它与内部类区分开来。静态嵌套类可以像任何其他顶级类一样实例化,它们只是以静态方式引用:
new StaticClass.NestedClass()
答案 1 :(得分:0)
非静态成员可以肯定在静态内部类中声明,但不允许以其他方式声明。请参阅:Why does Java prohibit static fields in inner classes?