Java anoniminė vidinė klasė yra vidinė klasė be pavadinimo ir kuriai sukuriamas tik vienas objektas. Anoniminė vidinė klasė gali būti naudinga kuriant objekto egzempliorių su tam tikrais „priedais“, tokiais kaip klasės ar sąsajos perkrovimo metodai, iš tikrųjų nereikia klasifikuoti klasės.
Java rūšiavimas masyvo sąraše
Paprastais žodžiais tariant, klasė, kuri neturi pavadinimo, yra žinoma kaip anoniminė vidinė „Java“ klasė. Jis turėtų būti naudojamas, jei turite nepaisyti klasės ar sąsajos metodo. Java Anonymous vidinė klasė gali būti sukurta dviem būdais:
- Klasė (gali būti abstrakti arba konkreti).
- Sąsaja
Java anoniminės vidinės klasės pavyzdys naudojant klasę
TestAnonymousInner.java
abstract class Person{ abstract void eat(); } class TestAnonymousInner{ public static void main(String args[]){ Person p=new Person(){ void eat(){System.out.println('nice fruits');} }; p.eat(); } }Išbandykite dabar
Išvestis:
Python programų sąrašas
nice fruits
Vidinis duoto kodo veikimas
Person p=new Person(){ void eat(){System.out.println('nice fruits');} };
- Klasė sukuriama, tačiau jos pavadinimą nusprendžia kompiliatorius, kuris išplečia klasę Asmuo ir pateikia eat() metodo įgyvendinimą.
- Sukuriamas anoniminės klasės objektas, kuris nurodomas „p“, asmens tipo nuorodos kintamuoju.
Vidinė klasė, sukurta kompiliatoriaus
import java.io.PrintStream; static class TestAnonymousInner extends Person { TestAnonymousInner(){} void eat() { System.out.println('nice fruits'); } }
Java anoniminės vidinės klasės pavyzdys naudojant sąsają
interface Eatable{ void eat(); } class TestAnnonymousInner1{ public static void main(String args[]){ Eatable e=new Eatable(){ public void eat(){System.out.println('nice fruits');} }; e.eat(); } }Išbandykite dabar
Išvestis:
nice fruits
Vidinis duoto kodo veikimas
Jis atlieka dvi pagrindines šio kodo užduotis:
Eatable p=new Eatable(){ void eat(){System.out.println('nice fruits');} };
- Klasė sukuriama, tačiau jos pavadinimą nusprendžia kompiliatorius, kuris įdiegia Eatable sąsają ir pateikia eat() metodo įgyvendinimą.
- Sukuriamas Anonymous klasės objektas, kuris nurodomas raide „p“ – valgomojo tipo referencinis kintamasis.
Vidinė klasė, sukurta kompiliatoriaus
import java.io.PrintStream; static class TestAnonymousInner1 implements Eatable { TestAnonymousInner1(){} void eat(){System.out.println('nice fruits');} }