可能重複:
Why does Java prohibit static fields in inner classes?非靜態成員不應該被聲明爲靜態內部類中使用Java
我得到很迷茫與內部類的訪問規格。請向我解釋私人和受保護的內部類和嵌套類。 我想知道爲什麼非靜態成員不能在靜態內部類中聲明。
非常感謝。
對不起......我錯了。我想知道爲什麼靜態成員不能在nonstatic內部類中聲明..我問了相反的方式..對不起
可能重複:
Why does Java prohibit static fields in inner classes?非靜態成員不應該被聲明爲靜態內部類中使用Java
我得到很迷茫與內部類的訪問規格。請向我解釋私人和受保護的內部類和嵌套類。 我想知道爲什麼非靜態成員不能在靜態內部類中聲明。
非常感謝。
對不起......我錯了。我想知道爲什麼靜態成員不能在nonstatic內部類中聲明..我問了相反的方式..對不起
希望這可以回答你的一些問題嗎?
http://docs.oracle.com/javase/tutorial/java/javaOO/nested.html
但是你錯了,你可以在一個靜態嵌套類聲明的非靜態成員,類被聲明爲static這裏是爲了從內部類區分開來。靜態內部類可以被實例化像任何其他頂層類,他們只是吹罰以靜態方式:
new StaticClass.NestedClass()
非靜態成員可以肯定在靜態內部類中聲明,但沒有其他辦法不允許。參見:Why does Java prohibit static fields in inner classes?