|NO.Z.00078|——————————|BigDataEnd|——|Java&特殊類.V06|------------------------------------------------|Java.v06|區域性內部類.v01|定義|
阿新 • • 發佈:2022-04-03
[BigDataJava:Java&特殊類.V06] [BigDataJava.面向物件] [|章節五|特殊類|區域性內部類的定義|]
一、區域性內部類的蒂尼
二、程式設計程式碼### --- 區域性(方法)內部類的格式 ~~~ ——> 訪問修飾符class 外部類的類名{ ~~~ ——> 訪問修飾符返回值型別成員方法名(形參列表){ ~~~ ——> class 內部類的類名{ ~~~ ——> 內部類的類體; ~~~ ——> } ~~~ ——> } ~~~ ——> }
三、程式設計程式碼package com.yanqi.task10; /** * 程式設計實現區域性內部類的定義和使用 */ public class AreaOuter { private int cnt = 1; public void show() { // 定義一個區域性變數進行測試,從Java8開始預設理解為final關鍵字修飾的變數 // 雖然可以省略final關鍵字,但建議還是加上 final int ic = 4; // 定義區域性內部類,只在當前方法體的內部好使 拷貝一份 class AreaInner { private int ia = 2; public AreaInner() { System.out.println("區域性內部類的構造方法!"); } public void test() { int ib = 3; System.out.println("ia = " + ia); // 2 System.out.println("cnt = " + cnt); // 1 //ic = 5; Error System.out.println("ic = " + ic); // 4 } } // 宣告區域性內部類的引用指向區域性內部類的物件 AreaInner ai = new AreaInner(); ai.test(); } }
package com.yanqi.task10;
public class AreaOuterTest {
public static void main(String[] args) {
// 1.宣告外部類型別的引用指向外部類的物件
AreaOuter ao = new AreaOuter();
// 2.通過show方法的呼叫實現區域性內容類的定義和使用
ao.show();
}
}
四、編譯列印
D:\JAVA\jdk-11.0.2\bin\java.exe "-javaagent:D:\IntelliJIDEA\IntelliJ IDEA 2019.3.3\lib\idea_rt.jar=54183: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.AreaOuterTest 區域性內部類的構造方法! ia = 2 cnt = 1 ic = 4 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)