Maison > Java > javaDidacticiel > Comment créer un événement personnalisé en Java à l'aide du modèle Observer ?

Comment créer un événement personnalisé en Java à l'aide du modèle Observer ?

Barbara Streisand
Libérer: 2024-11-28 01:35:13
original
784 Les gens l'ont consulté

How to Create a Custom Event in Java Using the Observer Pattern?

Créer un événement personnalisé en Java : exploiter le modèle d'observateur

Lors du développement d'applications Java, il est souvent nécessaire d'implémenter une communication entre différents objets dans de manière fiable et flexible. Les événements et les auditeurs fournissent une solution robuste à cet effet.

Considérez le scénario suivant :

When event "object 1 say 'hello'" happens, then object 2 responds to that event by saying "hello".
Copier après la connexion

Pour créer une telle interaction basée sur les événements, le modèle Observer est pratique. Le modèle Observer définit une relation un-à-plusieurs entre les objets, dans laquelle un « observable » (initiateur) informe tous ses « observateurs » enregistrés (auditeurs ou répondeurs) lorsqu'un « événement » se produit.

Pour mettre en œuvre cela modèle, suivez ces étapes :

  1. Définissez l'événement : Créez une interface qui représente le événement. Dans ce cas, cela pourrait être :

    interface HelloEvent {
     void someoneSaidHello();
    }
    Copier après la connexion
  2. Créer l'observable : Cette classe gérera les abonnements aux événements et avertira les observateurs lorsque l'événement se produit. Il peut être nommé "Initiateur":

    class Initiater {
     private List<HelloEventListener> listeners = new ArrayList<>();
     public void addListener(HelloEventListener toAdd) { listeners.add(toAdd); }
     public void sayHello() { System.out.println("Hello!!"); for (HelloEventListener hl: listeners) hl.someoneSaidHello(); }
    }
    Copier après la connexion
  3. Créer l'observateur : Cette classe implémente l'interface d'événement et définit le comportement qui doit être déclenché lorsque l'événement se produit. Voici un exemple de répondeur :

    class Responder implements HelloEventListener {
     @Override public void someoneSaidHello() { System.out.println("Hello there..."); }
    }
    Copier après la connexion
  4. Enregistrer les observateurs : Connectez les observateurs à l'observable à l'aide de la méthode "addListener" :

    Initiater initiater = new Initiater();
    Responder responder = new Responder();
    initiater.addListener(responder);
    Copier après la connexion
  5. Déclenchez l'événement :Les déclencheurs observables l'événement en appelant une méthode spécifique (par exemple, "sayHello") :

    initiater.sayHello(); // Output: "Hello!!!" "Hello there..."
    Copier après la connexion

En suivant ces étapes, vous aurez réussi à créer un mécanisme d'événement personnalisé en Java à l'aide d'Observer Modèle, permettant aux objets de communiquer et de réagir à des événements spécifiques de manière découplée et extensible.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal