今天覆習了一下內部類。
所謂的內部類呢,顧名思義,就是放在另乙個類裡邊的類。成員內部類可以分成兩種:例項內部類和靜態內部類。
無論是哪一種內部類,都必須保證 內部類和外部類不得重名。
下面來先講一下例項內部類,先來貼段**
package dawn;
public class a
private int a = 5;
private int b = 3;
public class b
}private b bb = new b();
}
在這個**中,類b就是類a的內部類,在類a中可以直接使用類b。
①在建立例項內部類的例項時,外部類的例項必須是存在的,即a.b test = new a().new b();
如果寫成a.b test = new a.b();會導致編譯錯誤。
②在內部類中,可以直接訪問外部類的所有成員。而且當多重巢狀的時候,內部類也可以訪問所有外部類的成員。
但是在外部類中,如果想訪問內部類的成員,必須先例項化乙個內部類的物件,通過內部類的例項訪問內部類的成員。
③在例項內部類中,不允許定義static成員。
④倘若在類b和類a中都出現了成員變數a,則在類b中,this.a表示類b中的成員,a.this.a表示類a中的成員。
內部類 成員內部類 區域性內部類 匿名內部類
public class 外部類 private int num 0 外部類如果要訪問內部類的成員,則需要通過內部類的物件訪問 使用方式 1.外部類使用內部類,主函式再使用外部類 2.通過new的方式 外部類.內部類 物件名 new 外部類 new 內部類 定義在方法內部的類,就是區域性內部類,只有...
內部類(成員內部類 靜態內部類 方法內部類)
一 成員內部類 最常見的內部類就是成員內部類,也稱作普通內部類 2 inner類中定義的test 方法可以訪問outer類中的資料,不受訪問控制符的影響。3 定義了成員內部類後,必須使用外部類物件來建立內部類物件,而不能直接去 new 乙個內部類物件,即 內部類 物件名 外部類物件.new 內部類 ...
成員內部類,區域性內部類,靜態內部類,匿名內部類
成員內部類 class demo1 innerclass a 內部類概述 b 內部類訪問特點 a 內部類可以直接訪問外部類的成員,包括私有。b 外部類要訪問內部類的成員,必須建立物件。外部類名.內部類名 物件名 外部類物件.內部類物件 class outer class demo2 innercla...