|NO.Z.00075|——————————|BigDataEnd|——|Java&特殊類.V03|------------------------------------------------|Java.v03|普通內部類.v02|使用方式|
阿新 • • 發佈:2022-04-03
[BigDataJava:Java&特殊類.V03] [BigDataJava.面向物件] [|章節五|特殊類|普通內部類的使用方式|]
一、普通內部類的使用方式
二、普通內部類的使用方式### --- 普通內部類的使用方式 ~~~ ——> 普通內部類和普通類一樣可以定義成員變數、成員方法以及構造方法等。 ~~~ ——> 普通內部類和普通類一樣可以使用final或者abstract關鍵字修飾。 ~~~ ——> 普通內部類還可以使用private或protected關鍵字進行修飾。 ~~~ ——> 普通內部類需要使用外部類物件來建立物件。 ~~~ ——> 如果內部類訪問外部類中與本類內部同名的成員變數或方法時,需要使用this關鍵字。
三、程式設計程式碼package com.yanqi.task10; /** * 程式設計實現普通內部類的定義和使用 - 文件註釋 */ public class NormalOuter { private int cnt = 1; // 定義普通內部類,隸屬於外部類的成員,並且是物件層級 /*private*/public /*final*/ class NormalInner { private int ia = 2; private int cnt = 3; public NormalInner() { System.out.println("普通內部類的構造方法體執行到了!"); } public void show() { System.out.println("外部類中變數cnt的數值為:" + cnt); // 1 System.out.println("ia = " + ia); // 2 } public void show2(int cnt) { System.out.println("形參變數cnt = " + cnt); // 區域性優先原則 4 System.out.println("內部類中cnt = " + this.cnt); // 3 System.out.println("外部類中cnt = " + NormalOuter.this.cnt); // 1 } } }
四、編譯列印package com.yanqi.task10; public class NormalOuterTest { public static void main(String[] args) { // 1.宣告NormalOuter型別的引用指向該型別的物件 NormalOuter no = new NormalOuter(); // 2.宣告NormalOuter類中內部類的引用指向內部類的物件 NormalOuter.NormalInner ni = no.new NormalInner(); // 呼叫內部類中的show方法 ni.show(); System.out.println("---------------------------------------------"); ni.show2(4); } }
D:\JAVA\jdk-11.0.2\bin\java.exe "-javaagent:D:\IntelliJIDEA\IntelliJ IDEA 2019.3.3\lib\idea_rt.jar=54045:D:\IntelliJIDEA\IntelliJ IDEA 2019.3.3\bin" -Dfile.encoding=UTF-8 -classpath E:\NO.Z.10000——javaproject\NO.H.00001.javase\javase\out\production\javase com.yanqi.task10.NormalOuterTest
普通內部類的構造方法體執行到了!
外部類中變數cnt的數值為:3
ia = 2
---------------------------------------------
形參變數cnt = 4
內部類中cnt = 3
外部類中cnt = 1
Process finished with exit code 0
===============================END===============================
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart ——W.S.Landor
來自為知筆記(Wiz)