Dieser Artikel beschreibt die Implementierung der Post -Office -Sendungsfunktion basierend auf dem Befehlsmodus in Java. Teilen Sie es für Ihre Referenz wie folgt weiter:
1. Musterdefinition
Befehlsmodus, Fehde der Anfrage vom Client als Objekt, ohne die Aktion der Anfrageaktivierung oder Verarbeitung von Details zur Annahme der Anforderung zu verstehen. Der grundlegende Zweck des Befehlsmodus besteht darin, zwischen dem "Anforderer" und dem "Implementierer" zu entkoppeln.
2. Modellbeispiele
1 Musteranalyse
Wir haben Postbriefe ausgeliehen, um dieses Muster zu veranschaulichen.
2 Befehlsmodus Statische Klassendiagramm
3 Code Beispiele
3.1 Empfänger-Schnittstelle-IRECIVER
Paket com.demo.receiver;/** * Briefe Receiver Interface * * @Author * */public interface ireceiver {/** * Der Empfänger empfängt den Brief * * @param meldung */public void readmail (String -Nachricht);}3.2 Buchstabenempfänger
Paket com.demo.receiver;/** * Briefempfänger * * @Author * */öffentliche Klassenempfänger implementiert IreCeiver {/** * Empfänger empfangen den Brief an Read * * @param meldung */public void readmail (String -Nachricht) {System.out.println ("Empfänger liest den Brief:" + Nachricht); }}3.3 Post-Office-Schnittstelle-Ipost
Paket com.demo.command;/** * Post -Office -Schnittstelle * * @author * */public interface ipost {/** * Post Office Sendet Briefe * * @param meldung */public void sendmail (String -Nachricht);}3.4 Post -Office -Implementierung
Paket com.demo.command; import com.demo.receiver.ireceiver;/** * Post -Implementierungsklasse * * @Author * */public class Post implementiert IPOST {// Empfänger -Objektinstanz privater Final IreCeiver -Empfänger; / ** * Konstruktor -Methode an die Empfängerobjektinstanz * * @param Receiver */ public post (Ireceiver -Empfänger) {this.Receiver = receiver; } / ** * Post Office sendet Briefe * * @param meldung * / @Override public void sendmail (String -Nachricht) {System.out.println ("Die Post sendet den Brief an den Empfänger ..."); // Das Postamt sendet den Brief an den Empfänger this.recever.readmail (Nachricht); }}3.5 Nachrichtensender - Invoker
Paket com.demo.invoker; import com.demo.command.ipost;/** * Sender * * @author * */public class Invoker {// Post Office Private Attribut Private iPost Post; / ** * Post -Office -Objektinstanz festlegen * * @param post */ public void setPost (ipost post) {this.post = post; } / ** * Der Absender sendet einen Brief * * @param meldung * / public void postmail (String -Nachricht) {System.out.println ("Sender sendet einen Brief an das Postamt ..."); this.post.sendmail (Nachricht); }}3.6 Lassen Sie die Post anfangen, an einem Kunden zu arbeiten
Paket com.demo; import com.demo.command.ipost; import com.demo.command.post; com.demo.invoker.invoker; Empfängerempfänger des Empfängers des Empfängers des Empfängers des Empfängers (neuer Empfänger (); // Erstellen Sie eine Post -Office -Objektinstanz, um die Empfängerobjektinstanz IPOST post = New Post (Empfänger) zu übergeben. // Erstellen Sie eine Absenderobjektinstanz und geben Sie sie an die Post -Office -Objektinstanz weiter. Invoker invoker = new invoker (); // Setzen Sie den Post Office invoker.setPost (post); // Der Absender beginnt mit dem Senden von Nachrichten! ! ! invoker.postmail ("Hallo! Lange nicht sehen, sind Sie in letzter Zeit mit der Arbeit beschäftigt?"); }}4 Auslaufergebnisse
Der Absender liefert den Brief an die Post ...
Die Post sendet den Brief an den Empfänger ...
Der Empfänger liest den Brief: Hallo! Lange nicht sehen, sind Sie in letzter Zeit mit der Arbeit beschäftigt?
III. Die Designprinzipien dieses Musters
1 "Open-Close" -Prinzip
2 Das Prinzip des geringsten Wissens
4. Das statische Klassendiagramm des Befehlsmodus
Für mehr Java-bezogene Inhalte können Leser, die an dieser Website interessiert sind, die Themen anzeigen: "Java-Datenstruktur und Algorithmus-Tutorial", "Zusammenfassung der Java-Operation DOM-Knoten-Tipps", "Zusammenfassung der Java-Datei- und Verzeichnisoperationstipps" und "Zusammenfassung von Java Cache Operation Tipps" "
Ich hoffe, dieser Artikel wird für Java -Programme aller hilfreich sein.