Trieda anonymných Java

V tomto výučbe sa pomocou príkladov dozviete o anonymných triedach v prostredí Java.

V prostredí Java môže trieda obsahovať inú triedu známu ako vnorená trieda. Je možné vytvoriť vnorenú triedu bez uvedenia názvu.

Vnorená trieda, ktorá nemá žiadny názov, sa nazýva anonymná trieda.

Anonymná trieda musí byť definovaná vo vnútri inej triedy. Preto je tiež známa ako anonymná vnútorná trieda. Jeho syntax je:

 class outerClass ( // defining anonymous class object1 = new Type(parameterList) ( // body of the anonymous class ); ) 

Anonymné triedy zvyčajne rozširujú podtriedy alebo implementujú rozhrania.

Tu môže byť Type

  1. nadtrieda, ktorú rozširuje anonymná trieda
  2. rozhranie, ktoré implementuje anonymná trieda

Vyššie uvedený kód vytvára objekt object1'anonymnej triedy za behu programu.

Poznámka: Anonymné triedy sú definované vo vnútri výrazu. Teda bodkočiarka sa používa na konci anonymných tried na označenie konca výrazu.

Príklad 1: Anonymná trieda rozširujúca triedu

 class Polygon ( public void display() ( System.out.println("Inside the Polygon class"); ) ) class AnonymousDemo ( public void createClass() ( // creation of anonymous class extending class Polygon Polygon p1 = new Polygon() ( public void display() ( System.out.println("Inside an anonymous class."); ) ); p1.display(); ) ) class Main ( public static void main(String() args) ( AnonymousDemo an = new AnonymousDemo(); an.createClass(); ) ) 

Výkon

 Vo vnútri anonymnej triedy. 

Vo vyššie uvedenom príklade sme vytvorili triedu Polygon. Má to jedinú metódu display().

Potom sme vytvorili anonymnú triedu, ktorá rozširuje triedu Polygon a prepíše display()metódu.

Keď spustíme program, vytvorí sa objekt p1 anonymnej triedy. Objekt potom zavolá display()metódu anonymnej triedy.

Príklad 2: Anonymná trieda implementujúca rozhranie

 interface Polygon ( public void display(); ) class AnonymousDemo ( public void createClass() ( // anonymous class implementing interface Polygon p1 = new Polygon() ( public void display() ( System.out.println("Inside an anonymous class."); ) ); p1.display(); ) ) class Main ( public static void main(String() args) ( AnonymousDemo an = new AnonymousDemo(); an.createClass(); ) ) 

Výkon

 Vo vnútri anonymnej triedy. 

Vo vyššie uvedenom príklade sme vytvorili anonymnú triedu, ktorá implementuje Polygonrozhranie.

Výhody anonymných tried

V anonymných triedach sa objekty vytvárajú kedykoľvek sú potrebné. To znamená, že objekty sa vytvárajú na vykonávanie niektorých konkrétnych úloh. Napríklad,

 Object = new Example() ( public void display() ( System.out.println("Anonymous class overrides the method display()."); ) ); 

Tu sa dynamicky vytvorí objekt anonymnej triedy, keď potrebujeme prepísať display()metódu.

Anonymné triedy nám tiež pomáhajú zjednodušiť náš kód.

Zaujímavé články...