
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 :
1 2 3 4 5 6 | public class Outer { public class Inner { } } |
Berikut cara membuat suatu instance dari inner class ”
1 2 | 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 :
01 02 03 04 05 06 07 08 09 10 11 | 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() :
1 2 3 | Outer outer = new Outer(); Outer.Inner inner = outer. new Inner(); inner.printText(); |
Leave a Reply