Il est souvent utile qu'un objet sache ce qu'un autre est en train de faire. Le moyen de communication le plus simple entre objets est d'envoyer et de recevoir des messages. Et le modèle d'événement de délégation de Java fournit exactement les moyens nécessaires pour créer un système de messagerie
Transmettre des messages entre objets Java
simple.Avec ce modèle,
un objet peut s’enregistrer comme un écouteur pour les
événements engendrés par un second objet. Quand le second objet
génère un événement, le premier en est informé.
J’ai utilisé le modèle d’événement de délégation pour créer un
MessageEvent (figure A) qui envoie des messages à un objet qui
met en oeuvre un MessageListener (figure B). Un MessageEvent
est constitué d’un objet qui identifie l’origine du message, d’une
chaîne contenant le texte du message, et d’un entier facultatif qui
contient l’identification du message.
Pour envoyer des messages, un objet doit définir un
EventListenerList :
private EventListenerList listenerList =
new EventListenerList();
L’envoyeur indique ensuite les méthodes pour ajouter et supprimer
des écouteurs :
public void addMessageListener(
MessageListener listener) {
listenerList.add(MessageListener.class, listener);
}
public void removeMessageListener(
MessageListener listener) {
listenerList.remove(MessageListener.class, listener);
}
L'envoyeur utilise la méthode MessageEvent fireMessageSent pour
envoyer un message :
MessageEvent.fireMessageSent( listenerList, new MessageEvent(this, "Message text") );
Pour recevoir des messages, un objet doit mettre en oeuvre
l'interface MessageListener :
public class Receiver extends JFrame
implements MessageListener {
Le récepteur s'enregistre ensuite auprès de l'envoyeur comme
MessageListener :
sender.addMessageListener(
(MessageListener) this);
Enfin, le récepteur définit la méthode messageSent requise par
l'interface MessageListener pour recevoir des messages :
public void messageSent(
MessageEvent event) {
if (event.getSource() == sender) {
text = event.getMessage();
}
}
Dans cet exemple,messageSent stocke les messages reçus de
l'envoyeur dans une chaîne de texte.
MessageEvents fournit un moyen simple pour transmettre des
informations d'état entre des objets , dans le même thread ou un
thread différent. Pour des exemples d'utilisation de
MessageEvents, voir l'application Archiver dans « Zip Files in Java
», novembre 2000.
Julian Monypenny
Téléchargez cette ressource
Créer des agents dans Microsoft 365 Copilot
Insight vous guide dans l’utilisation de la nouvelle expérience de création d’agents dans Microsoft Copilot Studio, disponible dans Copilot Chat. Découvrez les étapes clés pour concevoir, configurer et déployer ces nouveaux agents et injecter la puissance de l’IA directement dans le flux de travail.
Les articles les plus consultés
- Afficher les icônes cachées dans la barre de notification
- Et si les clients n’avaient plus le choix ?
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Activer la mise en veille prolongée dans Windows 10
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
Les plus consultés sur iTPro.fr
- Souveraineté numérique : réinvestir les fondations pour sortir de la dépendance à Microsoft
- L’essor de l’IA propulse les cyberattaques à des niveaux records
- L’IA sous contrôle : un impératif pour la souveraineté des entreprises
- CESIN : un baromètre qui mesure le risque cyber réel
Articles les + lus
CES 2026 : l’IA physique et la robotique redéfinissent le futur
Les 3 prédictions 2026 pour Java
Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
Face à l’urgence écologique, l’IT doit faire sa révolution
D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
À la une de la chaîne Tech
- CES 2026 : l’IA physique et la robotique redéfinissent le futur
- Les 3 prédictions 2026 pour Java
- Semi-conducteurs : comment l’Irlande veut contribuer à atténuer la pénurie mondiale de puces
- Face à l’urgence écologique, l’IT doit faire sa révolution
- D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
