Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Java

Maîtriser les classes internes anonymes en Java : définition, syntaxe et exemples pratiques

Maîtriser les classes internes anonymes en Java

Découvrez comment définir, implémenter et exploiter les classes internes anonymes en Java avec des exemples clairs et réels.

En Java, une classe peut en imbriquer une autre – une classe interne. Quand cette classe interne n'a pas de nom explicite, on l'appelle classe interne anonyme.

Les classes internes anonymes sont définies en ligne au sein d'une autre classe ou expression. Comme elles n'ont pas de nom, elles sont créées seulement quand le code englobant s'exécute, les rendant idéales pour des implémentations courtes, à usage unique.

Le motif typique est :

class OuterClass { // créer une instance de classe interne anonyme Type instance = new Type(paramètres) { // méthodes redéfinies ou comportement additionnel }; } 

Ici, Type peut être soit :

  1. une superclasse que la classe anonyme étend
  2. une interface que la classe anonyme implémente

À l'exécution, l'instruction ci-dessus construit une instance de la classe anonyme, qui peut alors être utilisée via le type de référence déclaré.

Important : Comme la déclaration est une expression, le point-virgule de fin termine l'instruction, pas le corps de la classe.


Exemple 1 : Étendre une classe avec une classe interne anonyme

class Polygon { public void display() { System.out.println("Inside the Polygon class"); } } class AnonymousDemo { public void createClass() { Polygon p1 = new Polygon() { @Override public void display() { System.out.println("Inside an anonymous class."); } }; p1.display(); } } public class Main { public static void main(String[] args) { new AnonymousDemo().createClass(); } } 

Sortie

Inside an anonymous class.

Dans cette illustration, la classe anonyme étend Polygon et redéfinit display(). Quand createClass() s'exécute, une instance de la sous-classe anonyme est créée, et sa méthode redéfinie est invoquée.


Exemple 2 : Implémenter une interface avec une classe interne anonyme

interface Polygon { void display(); } class AnonymousDemo { public void createClass() { Polygon p1 = new Polygon() { @Override public void display() { System.out.println("Inside an anonymous class."); } }; p1.display(); } } public class Main { public static void main(String[] args) { new AnonymousDemo().createClass(); } } 

Sortie

Inside an anonymous class.

Ici, la classe anonyme implémente l'interface Polygon, fournissant l'implémentation de méthode requise dans un bloc unique et concis.


Pourquoi utiliser les classes internes anonymes ?

Les classes internes anonymes brillent dans les scénarios où vous avez besoin d'une implémentation brève et contextuelle :

Avantages :

Pour une logique plus large et réutilisable, envisagez des classes nommées ou des expressions lambda (pour les interfaces fonctionnelles) pour garder le code maintenable.

Java

  1. Comprendre le mot-clé final en Java : variables, méthodes et classes
  2. L'opérateur instanceof en Java : guide complet
  3. Maîtriser l'héritage Java : concepts, types et exemples pratiques
  4. Comprendre les classes imbriquées statiques en Java : utilisation, différences et exemples
  5. Le pattern Singleton en Java expliqué : implémentation et utilisation sûre
  6. Maîtriser la réflexion Java : inspection des classes, méthodes et champs à l'exécution
  7. Maîtriser Java ObjectOutputStream : Sérialisation, méthodes et exemples pratiques
  8. Maîtriser les génériques Java : Construire du code réutilisable et type-safe
  9. Maîtriser les opérations sur les fichiers Java avec java.io – Création, lecture, écriture et suppression