Oleh : Reza Ervani
بسم الله الرحمن الرحيم
Class-class nested non statik juga disebut sebagai class-class inner. Inner class dihubungkan dengan suatu instance yang menaungi class. Jadi, pertama-tama kita mesti membuat suatu instance yang merupakan class penaungnya untuk kemudian membuat suatu instance yang merupakan inner class. Berikut contohnya :
public class Outer {
public class Inner {
}
}
Berikut cara membuat suatu instance dari inner class ”
Outer outer = new Outer(); Outer.Inner inner = outer.new Inner();
Perhatikan bagaimana kita meletakkan new setelah referensi ke outer class.
Class nested non static memiliki akses ke field milik class yang menaunginya. bahkan jika mereka dideklarasikan privat. Berikut contohnya :
public class Outer {
private String text = "I am private!";
public class Inner {
public void printText() {
System.out.println(text);
}
}
}
Perhatikan bagaimana metode prinText() pada inner class merujuk kepada text field private pada class penaungnya. Hal ini dapat dimungkinkan.
Berikut cara kita memanggil metode printText() :
Outer outer = new Outer(); Outer.Inner inner = outer.new Inner(); inner.printText();
Leave a Reply