您好,登錄后才能下訂單哦!
內部類:將一個類定義在一個類里面或是一個方法里面。
內部類分類:
成員內部類:作為類或方法的一個成員存在。
局部內部類:方法體里面的類,稱為局部內部類。
匿名內部類:沒有構造器的類。
靜態內部類:
成員內部類:
成員內部類可以無條件訪問外部類的所有成員屬性和成員方法(包括private成員和靜態成員)
注意:
當成員內部類擁有和外部類同名的成員變量或者方法時,會發生隱藏現象,即默認情況下訪問的是成員內部類的成員。如果要訪問外部類的同名成員,需要以 外部類.this.成員變量/成員方法 的形式訪問
在外部類中如果要訪問成員內部類的成員,必須先創建一個成員內部類的對象,再通過指向這個對象的引用來訪問:
要創建成員內部類的對象,前提是必須存在一個外部類的對象。創建成員內部類對象的一般方式如下:
局部內部類
局部內部類是定義在一個方法或者一個作用域里面的類,它和成員內部類的區別在于局部內部類的訪問僅限于方法內或者該作用域內
注意: 局部內部類就像是方法里面的一個局部變量一樣,是不能有public、protected、private以及static修飾符的。
匿名內部類是Android開發中用得最多的內部類,在編寫事件監聽的代碼時使用匿名內部類不但方便,而且使代碼更加容易維護。下面這段代碼是一段Android事件監聽代碼:匿名內部類是不能有訪問修飾符和static修飾符的
匿名內部類是唯一一種沒有構造器的類
匿名內部類在編譯的時候由系統自動起名Outter$1.class
一般來說,匿名內部類用于繼承其他類或是實現接口,并不需要增加額外的方法,只是對繼承方法的實現或是重寫。
靜態內部類也是定義在另一個類里面的類,只不過在類的前面多了一個關鍵字static。免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。