靜態內部類和非靜態內部類區別
靜態內部類可以建立靜態的成員,而非靜態的內部類不可以,原因:內部類相當於外部類的一個屬性,非靜態內部類中如果可以使用靜態成員,但是非靜態內部類是相當於非靜態成員,是在類例項化的時候才可以使用的,所以在非靜態類中定義靜態變數有一點多餘,所以不可以這樣使用。但是在非靜態內部類中可以定義static final int i=1;
靜態內部類只可以訪問外部類中的靜態成員變數與成員方法而非靜 態的內部類即可以訪問靜態的也可以訪問非靜態的外部類成員方法與成員變數:原因:靜態內部類可以不通過例項化,直接引用裡面的屬性和物件,因此,如果可以訪問外部的非靜態成員,則非靜態成員有可能沒有例項化。
靜態內部類不是外部內被載入的時候就載入,而是在需要呼叫內部靜態類的時候才會載入的。
- 靜態內部類不能實現介面,但是非靜態內部類是可以實現介面的
相關文章
- java之內部類(InnerClass)----非靜態內部類、靜態內部類、區域性內部類、匿名內部類Java
- java內部類,區域性內部類,靜態內部類,匿名內部類Java
- java靜態內部類Java
- 靜態內部類 呼叫
- 注意!非靜態內部類和非靜態方法的匿名類的this$0屬性
- Java中的巢狀類、內部類、靜態內部類Java巢狀
- Java中的靜態內部類詳解Java
- 糾結了很久的一個問題, 內部類和靜態內部類在使用上有啥區別
- java 非靜態內部類與外部類引用之間的關係Java
- 10-Java內部類——成員內部類、區域性內部類、匿名內部類Java
- java內部類之成員內部類之區域性內部類Java
- Java靜態變數在靜態方法內部無法改變值Java變數
- Java內部類詳解--區域性內部類Java
- 類內的靜態成員函式函式
- 靜態內部類實現的單例模式是執行緒安全的單例模式執行緒
- Java內部類和匿名內部類的用法Java
- java內部類之成員內部類之匿名內部類Java
- Python 靜態方法和類方法的區別Python
- 區域性變數和全域性變數(靜態和非靜態)區別變數
- 偽靜態、靜態和動態的區別
- Java中靜態跟非靜態的區別總結Java
- Java內部類詳解--匿名內部類Java
- java內部類之成員內部類Java
- 區域性內部類
- 網站偽靜態和純靜態區別網站
- 內部類
- Java內部類詳解-- 成員內部類Java
- java內部類,為什麼需要內部類?Java
- C/C++返回內部靜態成員的陷阱薦C++
- c#物件導向- 靜態成員和非靜態成員的區別C#物件
- 靜態變數和非靜態變數變數
- PHP類的靜態(static)方法和靜態(static)變數PHP變數
- java內部類之成員內部類例項Java
- static關鍵字有何魔法?竟讓Spring Boot搞出那麼多靜態內部類Spring Boot
- Java 內部類Java
- 匿名內部類
- Java內部類Java
- C# 靜態類C#