內部類
在類定義也有類,在該類上的內部被稱為乙個內部類。
訪問功能:
1,內部類可以直接訪問外部類成員,它包含私有成員
2,外部類需要訪問內部類的成員將需要建立一流的內部物件。
一般用於類的設計。
分析事物時,發現該事物描寫敘述中還有事物,並且這個事物還在訪問被描寫敘述事物的內容。
這時就把還有的食物定義成內部類來描寫敘述。
直接訪問外部類中的內部類中的成員
class outer
}class innerclassdemo
}
假設乙個內部類是靜態的。相當於乙個外部類,樣例例如以下
class outer
}class innerclassdemo
}
注意:假設內部類中定義了靜態成員。該內部類也必須是靜態的。
內部類訪問外部類的樣例
class outer }}
class innerclass
}
為什麼內部類能直接訪問外部類中的成員?
由於內部類持有了外部類的引用。
外部類名.this
區域性內部類
在區域性內部類中,要訪問外部類的區域性變數時,該區域性變數須要被final修飾。比較簡單就不粘**了。
匿名內部類
前提:內部類必須繼承乙個外部類或實現乙個介面。
匿名內部類:就是乙個匿名子類物件。
格式:new 父類 or 介面()
通常使用的場景:
當函式引數是介面型別時,並且介面中的方法不超過三個。能夠使用匿名內部類作為實際引數進行傳遞。
abstract class inter
class innerclass
public void show2()
});} public static void show (inter in)
}
java基礎 內部類和匿名內部類
內部類 class a 編譯後的結果 內部類編譯後都是以這種形式 外部類 內部類 如何生成內部類 class test 注意點 class a b是a的內部類,b可以使用a的成員變數,但不是繼承它,僅僅是可以使用。匿名內部類 正常的程式 inte ce aclass b class aimpl im...
內部類和匿名內部類
內部類 取個類名inner 有三種 成員內部類 相當於類中的成員 1.可以訪問外部類的成員變數.2.類中的成員函式訪問內部類 建立內部類的物件進行訪問.如 inner in new inner 3.外部其他類 不是內部類的直接外部類 訪問內部類的成員建立物件.格式 外部類名 內部類名 變數名 new...
內部類和匿名內部類
把類定義在其他類的內部,這個類就被稱為內部類。舉例 在類 a 中定義了乙個類 b,類 b 就是內部類。內部類的訪問特點 內部類可以直接訪問外部類的成員,包括私有。外部類要訪問內部類的成員,必須建立物件。按照內部類在類中定義的位置不同,可以分為如下兩種格式 成員位置 成員內部類 一般內部類就是不讓外界...