10.1建立內部類
·內部類:將乙個類的定義放在另乙個類的定義內部
·外部類中使用內部類:
·例項成員中使用內部類:和使用普通類沒差別
·靜態成員中使用內部類:要指明物件的型別,outerclassname.innerclassname
10.2鏈結到外部類
·內部類可以訪問外部類的所有成員
·迭代器模式
10.3使用.this與.new
·.this:outerclass.this,指代外部類物件的引用
·.new:outerclassobject.new innerclass();建立某個內部類物件
·普通內部類和外部類之間其實就好比寄生關係。必須先建立外部類的物件,才能建立內部類物件
10.4內部類與向上轉型
·內部類向上轉型為其基類,尤其是轉型為乙個介面,那麼這個內部類在外部類以外的地方看來是完全隱藏的
10.5在方法和作用域內的內部類(區域性內部類)
10.6匿名內部類
·final引數:如果希望乙個匿名內部類使用乙個定義在外部的物件,那麼編譯器會要求其引數引用是final的。
10.7巢狀類(靜態內部類)
·外部類中建立內部類物件:就像呼叫static方法一樣
·外部類以外的地方建立內部類物件:outerclassname.innerclassname inner = new outerclassname.innerclassname();直接導包也行
10.8為什麼需要內部類
·閉包與**
·內部類與控制框架
10.9內部類的繼承
· x extends y.inner
10.10內部類可以被覆蓋嗎
·不存在,完全是兩個獨立的內部類
10.11區域性內部類
·區域性內部類不能有訪問說明符
10.12內部類識別符號:$
第10章 內部類 二
public inte ce contents public class parcel7 public static void main string args contents 方法返回值的生成與表示這個返回值的類的定義結合在一起.另外,這個類是匿名的,它沒有名字.更糟的是.看起來似乎是你要建立乙...
第10天內部類
一成員內部類 作為外部類的成員存在,與成員變數和方法平級關係。class out class b public class test 輸出 我是內部類 我是外部類 外部類中i 1 j 1 內部類中i 2 成員內部類的位元組碼檔案格式 外部類 內部類名.class 二區域性內部類 作為區域性成員存在,...
第10天內部類
一成員內部類 作為外部類的成員存在,與成員變數和方法平級關係。class out class b public class test 輸出 我是內部類 我是外部類 外部類中i 1 j 1 內部類中i 2 成員內部類的位元組碼檔案格式 外部類 內部類名.class 二區域性內部類 作為區域性成員存在,...