Kelas internal Java dibagi menjadi: kelas internal anggota, kelas bersarang statis, metode kelas internal, dan kelas internal anonim.
Di dunia Java, sintaks kelas internal anonim disediakan untuk membantu semua orang menyederhanakan kode mereka. Artikel ini secara singkat menjelaskan pola umum dalam bentuk kode dari antarmuka, kelas abstrak dan kelas reguler.
1. Mode Antarmuka
antarmuka publik iwriter {void write ();} public static void main (string [] args) {iWriter writer = iWriter baru () {@Overridepublic void write () {System.out.println ("IWriter write ...");}; writer.write ();} 2. Kelas abstrak
PUBLIK PUBLIK KELAS ABSTRAKTRACHTRITER {PUBLIK ABSTRAKSIR VOID WRITE ();} public static void main (string [] args) {AbstractWriter AbstractWriter = New AbstractWriter () {@Overridepublic void write () {System.out.println ("AbstractWriter Write ...");}}; AbstractWriter ();3. Kelas Umum
Kelas publik TextWriter mengimplementasikan iWriter {@Overridepublic void write () {System.out.print ("Text Writer ..");}} public static void main (string [] args) {textwriter textwriter = new TextWriter () {@Overridepublic void write () {System.out.printwriter () {@Overridepublic void write () {out.out.printwriter () {@Overridepublic void write () {out.out.printwriter () {@Overridepublic void write () {out.out.printwriter () tulis ... ");}}; textwriter.write ();} 4. Gunakan di utas
public static void main (string [] args) {thread thread = new thread () {@Overridepublic void run () {new iWriter () {@Overridepublic void write () {System.out.println ("IWriter Thread ...");}. 5. Kesimpulan
Dari hal di atas, kita dapat melihat bahwa pada kenyataannya, apakah itu antarmuka, kelas abstrak, atau kelas internal anonim yang berasal dari kelas reguler, penggunaannya sama. Alasan mengapa ini adalah gula sintaksis adalah bahwa ketika kompiler mengkompilasi kelas internal anonim ke dalam kelas yang berbeda. Ini sebenarnya sama dengan menulis kelas implementasi secara terpisah dan kemudian menyebutnya. Untuk detailnya, Anda dapat merujuk ke direktori yang dihasilkan setelah kompilasi. Seperti yang ditunjukkan pada tangkapan layar di bawah ini: