內部類

內部類,計算機面向對象程式設計概念。向對象程式設計中,可以在一個類的內部定義另一個類,這種類稱為嵌套類(nestedclasses),它有兩種類型,即靜態嵌套類和非靜態嵌套類。靜態嵌套類使用很少,最重要的是非靜態嵌套類,也即是被稱作為內部類(inner)。內部類是JAVA語言的主要附加部分。內部類幾乎可以處於一個類內部任何位置,可以與實例變數處於同一級,或處於方法之內,甚至是一個表達式的一部分。

基本信息

定義

內部類是 JAVA語言的主要附加部分。嵌套類從JDK1.1開始引入。其中inner類又可分為三種:

其一、在一個類(外部類)中直接 定義的內部類;

其二、在一個方法(外部類的方法)中 定義的內部類;

其三、匿名內部類。

表現形式

⒈ 靜態內部類

⒉ 成員內部類

⒊局部內部類

⒋匿名內部類

優點

⒈ 內部類 對象可以訪問創建它的對象的實現,包括私有 數據;

⒉ 內部類不為同一 包的其他類所見,具有很好的 封裝性;

⒊ 使用內部類可以很方便的編寫 事件驅動程式;

⒋ 匿名內部類可以方便的 定義運行時 回調;

5.內部類可以方便的 定義

訪問類型

靜態方法的內部類可以訪問外部類的 靜態變數:靜態變數

靜態方法的內部類可以訪問方法的final 變數:2

靜態方法的匿名內部類可以訪問外部類的 靜態變數:靜態變數

靜態方法的匿名內部類可以訪問方法的final 變數:2

非 靜態方法的內部類可以訪問外部類的實例變數:實例變數

非 靜態方法的內部類可以訪問外部類的 靜態變數:靜態變數

非 靜態方法的內部類可以訪問方法的final 變數:2

非 靜態方法的匿名內部類可以訪問外部類的實例變數:實例變數

非 靜態方法的匿名內部類可以訪問外部類的 靜態變數:靜態變數

非 靜態方法的匿名內部類可以訪問方法的final 變數:2

訪問內容

我是 靜態內部類

我可以訪問 外部類的類變數

和外部類靜態方法

我可以訪問外部的靜態變數 外部靜態變數

我是成員級內部類,非靜態內部類

我可以訪問 外部類的實例變數

和外部類實例方法

和外部類靜態方法

我可以訪問外部的靜態變數 外部靜態變數

相關詞條

熱門詞條

聯絡我們