Ανώνυμη τάξη Java

Σε αυτό το σεμινάριο, θα μάθετε για ανώνυμα μαθήματα στην Java με τη βοήθεια παραδειγμάτων.

Στην Java, μια κλάση μπορεί να περιέχει μια άλλη κλάση γνωστή ως ένθετη τάξη. Είναι δυνατό να δημιουργήσετε μια ένθετη τάξη χωρίς να δώσετε κανένα όνομα.

Μια ένθετη τάξη που δεν έχει κανένα όνομα είναι γνωστή ως ανώνυμη τάξη.

Μια ανώνυμη τάξη πρέπει να οριστεί μέσα σε μια άλλη τάξη. Ως εκ τούτου, είναι επίσης γνωστό ως ανώνυμη εσωτερική τάξη. Η σύνταξή του είναι:

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

Οι ανώνυμες τάξεις συνήθως επεκτείνουν τις υποκατηγορίες ή εφαρμόζουν διεπαφές.

Εδώ, ο τύπος μπορεί να είναι

  1. ένα superclass που επεκτείνεται μια ανώνυμη τάξη
  2. μια διεπαφή που εφαρμόζει μια ανώνυμη τάξη

Ο παραπάνω κώδικας δημιουργεί ένα αντικείμενο, object1ανώνυμης κλάσης κατά το χρόνο εκτέλεσης.

Σημείωση: Οι ανώνυμες τάξεις ορίζονται μέσα σε μια παράσταση. Έτσι, το ερωτηματικό χρησιμοποιείται στο τέλος των ανώνυμων τάξεων για να δείξει το τέλος της έκφρασης.

Παράδειγμα 1: Ανώνυμη τάξη Επέκταση τάξης

 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(); ) ) 

Παραγωγή

 Μέσα σε μια ανώνυμη τάξη. 

Στο παραπάνω παράδειγμα, έχουμε δημιουργήσει μια τάξη Polygon. Έχει μια μεμονωμένη μέθοδο display().

Στη συνέχεια δημιουργήσαμε μια ανώνυμη τάξη που επεκτείνει την κλάση Polygon και παρακάμπτει τη display()μέθοδο.

Όταν εκτελούμε το πρόγραμμα, δημιουργείται ένα αντικείμενο p1 της ανώνυμης κλάσης. Στη συνέχεια, το αντικείμενο καλεί τη display()μέθοδο της ανώνυμης κλάσης.

Παράδειγμα 2: Ανώνυμη κλάση που υλοποιεί μια διεπαφή

 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(); ) ) 

Παραγωγή

 Μέσα σε μια ανώνυμη τάξη. 

Στο παραπάνω παράδειγμα, δημιουργήσαμε μια ανώνυμη κλάση που εφαρμόζει τη Polygonδιεπαφή.

Πλεονεκτήματα των ανώνυμων τάξεων

Σε ανώνυμες τάξεις, τα αντικείμενα δημιουργούνται όποτε απαιτούνται. Δηλαδή, τα αντικείμενα δημιουργούνται για την εκτέλεση συγκεκριμένων εργασιών. Για παράδειγμα,

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

Εδώ, ένα αντικείμενο της ανώνυμης κλάσης δημιουργείται δυναμικά όταν πρέπει να παρακάμψουμε τη display()μέθοδο.

Τα ανώνυμα μαθήματα μάς βοηθούν επίσης να κάνουμε τον κωδικό μας συνοπτικό.

ενδιαφέροντα άρθρα...