Este artigo descreve a implementação da função de envio de correios com base no modo de comando em Java. Compartilhe -o para sua referência, como segue:
1. Definição do padrão
Modo de comando, brigando com a solicitação do cliente como um objeto, sem entender a ação dos detalhes de ativação ou processamento da solicitação sobre a aceitação da solicitação. O objetivo fundamental do modo de comando é dissociar entre o "solicitante" e o "implementador".
2. Exemplos de modelo
1 Análise de padrão
Emprestamos cartas emprestadas para ilustrar esse padrão.
2 diagrama de classe estática no modo de comando
3 exemplos de código
3.1 Receptor de cartas interface-Ireceiver
pacote com.demo.receiver;/** * interface do receptor da carta * * @author * */interface pública IRECEIVER {/** * O destinatário recebe a carta para ler * * @param mensagem */public void readmail (string mensagem);}3.2 Receptor de carta
pacote com.demo.receiver;/** * RECENDEIRO DE LARTA * * @Author * */public classe receptor implementa o IRECEIVER {/** * REMBENCIETO RECEBENDOU A CARTA PARA LER * * @param mensagem */public void readmail (string message) {System.out.println ("Recriante leia a letra:" +); }}3.3 IPOST da interface dos correios
pacote com.demo.Command;/** * Interface dos correios * * @Author * */interface pública iPost {/** * Correios envia letras * * @param mensagem */public void sendmail (mensagem de string);}3.4 Implementação de correios
pacote com.demo.Command; importar com.demo.receiver.ireceiver;/** * Classe de implementação do correio * * @Author * */classe pública postagem implementa iPost {// Receptor de objeto Receptor final privado IRECEIVER RECEBIVER; / ** * Método do construtor para enviar para a instância do objeto destinatário * * @param receptor */ public post (receptor IRECEIVER) {this.receiver = receptor; } / ** * Correios envia cartas * * @param mensagem * / @Override public void sendmail (string message) {System.out.println ("O correio envia a carta para o destinatário ..."); // o correio envia a carta ao destinatário this.receiver.readmail (mensagem); }}3.5 remetente de mensagem - Invocador
pacote com.demo.invoker; importar com.demo.command.iPost;/** * remetente * * @author * */public class Invocer {// Post Office Attribute Private IPOST privado post; / ** * Defina a instância do objeto do correio * * @param post */ public void setPost (ipost post) {this.post = post; } / ** * O remetente envia uma letra * * @param mensagem * / public void postmail (mensagem de string) {System.out.println ("O remetente envia uma carta para o correio ..."); this.post.sendmail (mensagem); }}3.6 Deixe o correio começar a trabalhar um cliente
pacote com.demo; importar com.demo.command.iPost; importar com.demo.command.post; import com.demo.invoker.invoker; importar com.demo.receiver.receiver; receptor de instância do objeto receptor receptor = novo receptor (); // Crie uma instância do objeto Cost Office ipost post = nova postagem (receptor); // Crie uma instância do objeto do remetente e passe -o para a instância do objeto Corrent Office. Invocador Invocador = new Invoker (); // Defina o invólucro dos correios Invoker.SetPost (post); // O remetente começa a enviar mensagens! ! ! Invoker.Postmail ("Olá! Long Time, sem ver, você está ocupado com o trabalho recentemente?"); }}4 resultados de execução
O remetente entrega a carta ao correio ...
O Correio envia a carta ao destinatário ...
O destinatário lê a carta: Olá! Há muito tempo sem ver, você está ocupado com o trabalho recentemente?
Iii. Os princípios de design deste padrão
1 Princípio de "Close Open"
2 O princípio do menor conhecimento
4. Diagrama de classe estático no modo de comando
Para mais conteúdo relacionado ao Java, os leitores interessados neste site podem visualizar os tópicos: "Estrutura de dados Java e tutorial de algoritmo", "Resumo da operação Java Dom Node Tips", "Resumo de Dicas de Operação de Arquivos e Diretórios de Java" e "Resumo das dicas de operação do Java Cache"
Espero que este artigo seja útil para a programação Java de todos.