JAVA高階特性--內部類
阿新 • • 發佈:2018-11-12
內部類概念
public class Outer{ class inner{ } }
特點
可以很好的實現隱藏,可以使用procted,private
可以直接訪問外部類的所有成員 ,包括私有成員.
外部內不能訪問內部類的成員,必須首先建立內部類的 物件才可訪問
成員內部內及應用
//外部內不能訪問內部內屬性和方法,必須建立物件
//內部類中不能有靜態方法和屬性
//內部類可以訪問Outer.this.name外部內屬性
//靜態常量在內部類中是可以的
package com.tanlei.newer; public class MemberInner { public static void main(String[] args) { //建立外部內物件 Outer outer=new Outer(); outer.show(); //建立內部類物件 Outer.Inner inner=outer.new Inner(); inner.show(); } } class Outer { private String name = "tanle"; private int num = 10; public void show() { System.out.println(name + num); //外部內不能訪問內部內屬性和方法,必須建立物件 Inner inner1 =new Inner(); inner1.show(); } public class Inner { private String name = "lisi"; private int num = 20; public void show() { //內部類中不能有靜態方法和屬性 //內部類可以訪問Outer.this.name外部內屬性 //靜態常量在內部類中是可以的 System.out.println(Outer.this.name +" 內部類"+ num); } } }