內部類總結:
1.首先,把內部類作為外部類的乙個特殊的成員來看待,因此它有類成員的封閉等級:private ,protected,預設(friendly),public
它有類成員的修飾符: static,final,abstract
2.非靜態內部類nested inner class,內部類隱含有乙個外部類的指標this,因此,它可以訪問外部類的一切資源(當然包括private)
外部類訪問內部類的成員,先要取得內部類的物件,並且取決於內部類成員的封裝等級。
非靜態內部類不能包含任何static成員.
3.靜態內部類:static inner class,不再包含外部類的this指標,並且在外部類裝載時初始化.
靜態內部類能包含static或非static成員.
靜態內部類只能訪問外部類static成員.
外部類訪問靜態內部類的成員,循一般類法規。對於static成員,用類名.成員即可訪問,對於非static成員,只能
用物件.成員進行訪問
4.對於方法中的內部類或塊中內部類只能訪問塊中或方法中的final變數。
類成員有兩種static , non-static,同樣內部類也有這兩種
non-static 內部類的例項,必須在外部類的方法中建立或通過外部類的例項來建立(outerclassinstancename.new innerclassname(constructorparameter)),並且可直接訪問外部類的資訊,外部類物件可通過outerclassname.this來引用
static 內部類的例項, 直接建立即可,沒有對外部類例項的引用。
內部類不管static還是non-static都有對外部類的引用
non-static 內部類不允許有static成員
方法中的內部類只允許訪問方法中的final區域性變數和方法的final引數列表,所以說方法中的內部類和內部類沒什麼區別。但方法中的內部類不能在方法以外訪問,方法中不可以有static內部類
匿名內部類如果繼承自介面,必須實現指定介面的方法,且無引數
匿名內部類如果繼承自類,引數必須按父類的建構函式的引數傳遞
匿名內部類小總結
內部類 表示在乙個類的內部還有另外乙個類稱為內部類。匿名內部類 如果類在整個操作中只使用一次的話,就可以將其定義為匿名內部類,匿名內部類是在介面以及抽象類的基礎上發展起來的。匿名內部類就是,首先這個類是內部類,其次這個類沒有名字,最後在這個匿名的類中覆寫所有的抽象方法。inte ce aclass ...
內部類總結
1內部類的巢狀可以理解成類的鏈關係,在構造乙個內部類 非static 的例項的時候,會將直接外層類的例項 作為引數傳進建構函式,而外層類的例項也是用其外層類的例項構造,所以是一種鏈狀關係,內部的類可以使用所有 外層的類的例項,而外層的類不能使用內層的類,應用a.this 最外層類例項 a.b.c.t...
內部類總結
內部類不是很好理解,但說白了其實也就是乙個類中還包含著另外乙個類 如同乙個人是由大腦 肢體 器官等身體結果組成,而內部類相當於其中的某個器官之一,例如心臟 它也有自己的屬性和行為 血液 跳動 顯然,此處不能單方面用屬性或者方法表示乙個心臟,而需要乙個類 而心臟又在人體當中,正如同是內部類在外部內當中...