Java內部類(成員內部類、靜態內部類、區域性內部類、匿名內部類)小結
內部類不是很好理解,但說白了其實也就是一個類中還包含著另外一個類
如同一個人是由大腦、肢體、器官等身體結果組成,而內部類相當於其中的某個器官之一,例如心臟:它也有自己的屬性和行為(血液、跳動)
顯然,此處不能單方面用屬性或者方法表示一個心臟,而需要一個類
而心臟又在人體當中,正如同是內部類在外部內當中
例項1:內部類的基本結構
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
//外部類
class Out
{
private int age
= 12 ;
//內部類
class In
{
public void print()
{
System.out.println(age);
}
}
}
public class Demo
{
public static void main(String[]
args) {
Out.In
in = new Out(). new In();
in.print();
//或者採用下種方式訪問
/*
Out
out = new Out(); Out.In
in = out.new In();
in.print();
*/
}
}
|
執行結果:12
從上面的例子不難看出,內部類其實嚴重破壞了良好的程式碼結構,但為什麼還要使用內部類呢?
因為內部類可以隨意使用外部類的成員變數(包括私有)而不用生成外部類的物件,這也是內部類的唯一優點
如同心臟可以直接訪問身體的血液,而不是通過醫生來抽血
程式編譯過後會產生兩個.class檔案,分別是Out.class和Out$In.class
其中$代表了上面程式中Out.In中的那個 .
Out.In in = new Out().new In()可以用來生成內部類的物件,這種方法存在兩個小知識點需要注意
1.開頭的Out是為了標明需要生成的內部類物件在哪個外部類當中
2.必須先有外部類的物件才能生成內部類的物件,因為內部類的作用就是為了訪問外部類中的成員變數
例項2:內部類中的變數訪問形式
1
2
3
4
5
6
7
8
9
10
11
相關推薦思科項目1實戰(vlan、靜態,單臂,浮動路由、vrrp/standby、nat、端口映射,遠程等)vlan vrrp 單臂路由 nat pc配地址:C1192.168.10.10192.168.10.1C2192.168.20.10192.168.20.1C3192.168.10.20192.168.10.1C4192.168.20.20192.168.20.1需求1:SW1(config java之匿名內部類、成員內部類、方法內部類、靜態內部類一、匿名內部類:必須繼承一個類或者實現介面,不能建立建構函式。 /** * 匿名內部類 * * @author: Rodge * @time: 2018年10月4日 下午3:44:03 * @version: V1.0.0 */ public class AnonymousInner java基礎——————內部類 靜態內部類、成員內部類、匿名內部類內部類包括四種類型:靜態內部類,例項(成員)內部類,匿名內部類,本地內部類(不多用) 主要分析前三種內部類的建立以及物件的建立和方法的如何呼叫 一、靜態內部類 1)訪問內部類的資料成員和方法 訪問內部類資料成員方法: 內部類物件直接呼叫 內部類物件呼叫外部類非靜態資料成員和方法: Java內部類(成員內部類、靜態內部類、方法內部類、匿名內部類)內部類 內部類是定義在一個類內部進行其他類結構的巢狀的操作。 為什麼存在內部類?1.首先看下內部類和不用內部類實現相同功能的程式碼: 不用內部類 //////不用內部類 class Outter { private String msg="pick"; JAVA內部類(成員內部類、區域性內部類、匿名內部類、靜態內部類)在Java中,可以將一個類定義在另一個類裡面或者一個方法裡面,這樣的類稱為內部類。廣泛意義上的內部類一般來說包括這四種:成員內部類、區域性內部類、匿名內部類和靜態內部類。下面就先來了解一下這四種內部類的用法。 1.成員內部類 成員內部類是最普通的內部類,它 Java中靜態成員類及靜態內部類的Builder模式構建物件、靜態內部類構建單例模式一、什麼是巢狀類 巢狀類是指被定義在另一個類的內部的類。巢狀類存在的目的應該只是為他的外圍類提供服務。如果巢狀類將來可能會用於其他的某個環境中,它就應該是頂層類。巢狀類有四種:靜態成員類、非靜態成員類、匿名類和區域性類。除了第一種之外,其他三種被稱為內部類。 Java內部類(成員內部類、靜態內部類、區域性內部類、匿名內部類)小結內部類不是很好理解,但說白了其實也就是一個類中還包含著另外一個類 如同一個人是由大腦、肢體、器官等身體結果組成,而內部類相當於其中的某個器官之一,例如心臟:它也有自己的屬性和行為(血液、跳動) 顯然,此處不能單方面用屬性或者方法表示一個心臟,而需要一個類 Java-為什麼非靜態內部類裡面不能定義靜態方法、靜態成員變數、靜態初始化塊?首先要明確一點: static修飾方法、成員變數是屬於類自己的。並不屬於特定的某個物件。所以我們可以像這樣使用static修飾的方法、變數:ClassName.methodName、ClassName java內部類之成員內部類、靜態內部類內部類其實就是一個類中還包含著另外一個類 如同一個人是由大腦、肢體、器官等身體結果組成,而內部類相當於其中的某個器官之一,例如心臟:它也有自己的屬性和行為(血液、跳動)顯然,此處不能單方面用屬性或者方法表示一個心臟,而需要一個類,而心臟又在人體當中,正如同是內部類在外部內當 六個例項教你正確使用Java內部類(成員內部類、匿名內部類、靜態內部類、區域性內部類)內部類不是很好理解,但說白了其實也就是一個類中還包含著另外一個類 如同一個人是由大腦、肢體、器官等身體結果組成,而內部類相當於其中的某個器官之一,例如心臟:它也有自己的屬性和行為(血液、跳動) 顯然,此處不能單方面用屬性或者方法表示一個心臟,而需要一個類 java基礎15 內部類(成員內部類、局部內部類)和匿名內部類body static 目前 還需 sleep imp 右下角 你好 private 一、內部類 1.1.1、成員內部類 一個類定義在另一個類的內部,那麽該類就叫作成員內部類 1.1.2、成員內部類訪問方式 方式一:在外部類中提供一個方法創建內部類的對 java之單例模式:餓漢式、懶漢式、雙重校驗鎖、列舉、靜態內部類一、餓漢式: /** * 餓漢式: * 不存在多執行緒同步問題,當類被載入時,初始化並分配記憶體空間; * 當類被解除安裝時,才釋放所佔記憶體,因此在某些特定條件下會耗費記憶體。 * * @author: Rodge * @time: 2018年10月4日 下午4:35:12 * @ “全棧2019”Java第七十一章:外部類訪問靜態內部類成員詳解難度 初級 學習時間 10分鐘 適合人群 零基礎 開發語言 Java 開發環境 JDK v11 IntelliJ IDEA v2018.3 文章原文連結 “全棧2019”Java第七十一章:外部類訪問靜態內部類成員詳解 下一章 “全棧2019”Java第七十二章:靜態內 “全棧2019”Java第七十二章:靜態內部類訪問外部類成員難度 初級 學習時間 10分鐘 適合人群 零基礎 開發語言 Java 開發環境 JDK v11 IntelliJ IDEA v2018.3 文章原文連結 “全棧2019”Java第七十二章:靜態內部類訪問外部類成員 下一章 “全棧2019”Java第七十三章:外部類裡多 “全棧2019”Java第七十六章:靜態、非靜態內部類訪問權限inf 內部類 靜態 alt intel com 詳解 int 文章 難度 初級 學習時間 10分鐘 適合人群 零基礎 開發語言 Java 開發環境 JDK v11 IntelliJ IDEA v2018.3 文章原文鏈接 “全棧2019”Java第七十六章:靜態、非靜 “全棧2019”Java第七十六章:靜態、非靜態內部類訪問許可權難度 初級 學習時間 10分鐘 適合人群 零基礎 開發語言 Java 開發環境 JDK v11 IntelliJ IDEA v2018.3 文章原文連結 “全棧2019”Java第七十六章:靜態、非靜態內部類訪問許可權 下一章 “全棧2019”Java第七十七章:抽象內 Java中的巢狀類、內部類、靜態內部類在Java中我們在一個類的內部再定義一個類,如下所示:class OuterClass { ... class NestedClass { ... } }那麼在上面的例子中我們稱OuterClass為外圍類(enclosing clas Java內部類、靜態類、區域性類詳解先看一個例子: class TalkingClock { private int interval; private boolean beep; public TalkingClock(int interval,boolean be java內部類總結 問題:內部類、靜態內部類區別、使用場景?問題:內部類、靜態內部類區別、使用場景?1.靜態內部類可以有靜態成員(方法,屬性),而非靜態內部類則不能有靜態成員(方法,屬性)。2.靜態內部類只能夠訪問外部類的靜態成員,而非靜態內部類則可以訪問外部類的所有成員(方法,屬性)。3.例項化方式不同:(1)例項化成員內部類“”通 Java 中內部類、靜態內部類、列舉類一、內部類 在另一個類中定義的類 內部類作用 1、內部類提供了更好的封裝。只能讓外部類直接訪問,不允許同一個包中的其他類直接訪問。 2、內部類可以直接訪問外部類的私有屬性,內部類被當成其外部類成員。當外部類不能訪問內部類的內部屬性。 內 |