內部類(一)
一、定義:
內部類就是定義在另乙個類內部的類,與之對應,包含內部類的類就是外部類。
二、作用:
1.內部類提供更好的封裝,可以把內部類隱藏在外部類之內,不允許同乙個包之中的其他類訪問該類。
2.內部類的方法可以直接訪問外部類的所有資料,包括私有屬性的資料。
3.內部類所實現的功能,外部類同樣可以實現,只是有時使用內部類更加方便。
三、種類:
1.成員內部類
2.靜態內部類
3.方法內部類
4.匿名內部類
四、使用方法:
1、 inner 類定義在 outer 類的內部,相當於 outer 類的乙個成員變數的位置,inner 類可以使用任意訪問控制符,如 public 、 protected 、 private 等。
2、 定義了成員內部類後,必須使用外部類物件來建立內部類物件,而不能直接去 new 乙個內部類物件,即:內部類 物件名 = 外部類物件.new 內部類( )。
//建立外部類的物件
helloworld o = new helloworld ();
//建立內部類的物件
inner inn = o.new inner() ;
3、 外部類是不能直接使用內部類的成員和方法滴!可先建立內部類的物件,然後通過內部類的物件來訪問其成員變數和方法。如:
//建立外部類的物件
helloworld o = new helloworld ();
//建立內部類的物件
inner inn = o.new inner() ;
//呼叫內部類物件的show方法
inn.show();*
4、 如果外部類和內部類具有相同的成員變數或方法,內部類預設訪問自己的成員變數或方法,如果要訪問外部類的成員變數,可以使用 this 關鍵字。
Java內部類 Java例項內部類
例項內部類是指沒有用 static 修飾的內部類。示例 如下 public class outer 上述示例中的 inner 類就是例項內部類。例項內部類有如下特點。1 在外部類的靜態方法和外部類以外的其他類中,必須通過外部類的例項建立內部類的例項。public class outer inner1...
Java內部類 靜態內部類
靜態內部類是外部類的靜態成員,不依賴於外部類的物件而存在,因此在外部類外面建立靜內部類物件時不需要首先建立外部類的物件 靜態內部類也可以稱為靜態巢狀類或頂級巢狀類。靜態內部類與外部類物件之間不存在著對成員的共享關係,靜態內部類其實已經脫離了外部類的控制 static關鍵字只是說明其在建立物件的時候不...
Java內部類與匿名內部類
定義在類中方法之外的內部類分為例項內部類和靜態內部類.例項內部類自動持有外部類的例項的引用,即可以訪問外部類的所有變數 靜態內部類可以直接訪問外部類的靜態成員 定義在方法中的內部類叫區域性內部類,該類只能訪問被final修飾的區域性變數和引數 介面定義如下 inte ce super 例子1 pub...