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
Barbara Streisandoriginal
2024-11-28 01:35:13826parcourir

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".

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();
    }
  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(); }
    }
  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..."); }
    }
  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);
  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..."

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!

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