Java基礎筆記38——區域性內部類
阿新 • • 發佈:2021-09-17
區域性內部類:定義在一個方法中的類
注意:在方法定義的內部類中只能訪問方法中的final型別的區域性變數
例子:
package com.lqh.chapter05; //外部類 public class OuterLocal { // 外部類變數 String out = "outer"; String repeat = "22"; public void outMethod() { final String method = "區域性變數"; System.out.println("外部類方法");// 區域性內部類 class Inner { String in = "inner"; String repeat = "88";//不可以定義static修飾的變數 // 內部方法 public void inMethod() { System.out.println("內部類方法"); System.out.println(in);//內部類的變數 System.out.println(out);//外部類的變數 System.out.println(method); } public String getRepeat() { //repeat是內部類的值,而OuterLocal.this.repeat則是外部類的值 return repeat + " "+ OuterLocal.this.repeat; } } //例項化內部化 Inner inner = newInner(); inner.inMethod(); System.out.println(inner.getRepeat()); } public void visitInMethod() { //在類中訪問內部類 outMethod(); } public static void main(String[] args) { //在類中訪問內部類 OuterLocal outer = new OuterLocal(); outer.visitInMethod(); } }
輸出結果為:
外部類方法
內部類方法
inner
outer
區域性變數
88 22