Maison  >  Article  >  Java  >  Comment créer des classes internes anonymes en Java ?

Comment créer des classes internes anonymes en Java ?

WBOY
WBOYoriginal
2024-05-01 08:39:01371parcourir

Les classes internes anonymes sont des classes internes définies lors de la création d'une instance sans nom explicite. Syntaxe : new 8e2669e9e9c18dd02e31fc0ba9ee2eba() { // Corps de classe interne anonyme}. Avantages : simplicité, réutilisation du code, portée locale. Inconvénients : mauvaise lisibilité et difficulté de débogage. Des exemples pratiques incluent le remplacement de classes anonymes et l'implémentation d'interfaces anonymes.

Java 匿名内部类如何创建?

Guide de création de classe interne anonyme Java

Qu'est-ce qu'une classe interne anonyme ?

La classe interne anonyme est une classe interne définie lors de la création d'une instance. Ils n'ont pas de nom explicite et sont souvent utilisés pour remplacer ou implémenter une classe ou une interface dans un court délai.

Créer une classe interne anonyme

Pour créer une classe interne anonyme en Java, utilisez la syntaxe suivante :

new <基类或接口名>() {
    // 匿名内部类体
};

Le nom de la classe de base ou de l'interface est la classe ou l'interface dont la classe interne anonyme héritera ou implémentera. Le corps de la classe contient les définitions des méthodes et des champs de la classe interne anonyme.

Cas pratique

1. Remplacer les classes anonymes

Utilisez des classes internes anonymes pour remplacer la méthode run() de la classe Runnable : Runnable 类的 run() 方法:

Thread thread = new Thread(new Runnable() {
    @Override
    public void run() {
        System.out.println("匿名内部类线程运行");
    }
});

thread.start();

2. 实现匿名接口

使用匿名内部类实现 Comparator

List<String> strings = new ArrayList<>();

Comparator<String> comparator = new Comparator<>() {
    @Override
    public int compare(String s1, String s2) {
        return s1.length() - s2.length();
    }
};

strings.sort(comparator);

2. Implémenter une interface anonyme

Utiliser une classe interne anonyme pour implémenter l'interface Comparator :
    rrreee
  • Avantages
  • Simplicité :
  • Des classes internes anonymes peuvent être créées directement sans définir de classe distincte. déposer.
  • Réutilisation du code :
  • Ils peuvent être utilisés pour créer des implémentations temporaires qui ne sont utilisées qu'une seule fois.

Portée locale : Les classes internes anonymes ne sont accessibles que dans la portée de la classe ou de la méthode qui les a créées.

  • Inconvénients
  • Lisibilité :
  • Les classes internes anonymes peuvent rendre le code difficile à lire et à comprendre.
🎜🎜Difficulté de débogage : 🎜Étant donné que les classes internes anonymes n'ont pas de nom, elles peuvent être plus difficiles à suivre lors du débogage. 🎜🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn