1. 程式人生 > 實用技巧 >定位JVM記憶體洩漏常用命令和方法

定位JVM記憶體洩漏常用命令和方法

內部類

內部類是寫在類裡面的類,在一個類中,還可以定義多個類,內部類可以直接直接獲取外部類中的所有屬性和方法,就算是私有屬性也可以獲得。如果說繼承像父親和兒子,那外部類和內部類的關係就像丈夫和妻子,只不過這裡是一夫多妻制。內部類像妻子,可以直接使用外部內中所有東西。但內部類不是個稱職的妻子,外部內不能使用內部類中的屬性和方法。(除了類中的類,還有寫在方法中的類,叫做區域性內部類。但不推薦使用。)

內部類就是在一個類中再定義一個類,這個類可以直接使用外部類中的所有方法和屬性,但如果內部類被static修飾的,會比外部類更早生成,這樣就不能使用外部類的東西了。在呼叫內部類時,需要先初始化外部類,再用外部類來呼叫內部類。

呼叫方法,先例項化外部類後:

外部類 . 內部類 物件 = 外部類 . new 內部類();

建立內部類

package oop.Demo08;

//外部類
public class Outer {
private int ID = 5;
public void go (){
System.out.println("外部類");
}


//內部類
public class Inner{
public void in (){
System.out.println("內部類");
}

public void gatID(){
System.out.println(ID);//可以直接獲取到外部類的私有屬性
}
}
}

測試類

package oop;

import oop.Demo08.Outer;

public class Application {
public static void main(String[] args) {

Outer outer = new Outer();//例項化外部類

Outer.Inner inner = outer.new Inner();//通過外部類再例項化內部類

outer.go();//輸出外部類的方法
inner.in();//輸出內部類的方法
inner.gatID();//輸出內部類獲取到外部類的私有屬性的方法
}
}