设计模式之---命令模式

来源:互联网 发布:java转smail工具 编辑:程序博客网 时间:2024/06/04 19:04

定义:将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可

以提供命令的撤销和恢复功能。


package command;public class Receiver {public void doSomething(){          System.out.println("接收者执行业务逻辑处理");      }  }
package command;public interface Command {void execute();}
package command;public class ConcreteCommand implements Command {Receiver receiver;public ConcreteCommand(Receiver receiver) {this.receiver=receiver;}@Overridepublic void execute() {// TODO Auto-generated method stubreceiver.doSomething();}}
package command;public class Invoker {private Command command;      public void setCommand(Command command) {          this.command = command;      }      public void action(){          this.command.execute();      }  }
package command;public class Client {      public static void main(String[] args){          Receiver receiver = new Receiver();          Command command = new ConcreteCommand(receiver);          //客户端直接执行具体命令方式         command.execute();            //客户端通过调用者来执行命令          Invoker invoker = new Invoker();          invoker.setCommand(command);          invoker.action();      }  }  
命令模式优缺点

命令模式适用场景

该不该引入设计模式

1 0
原创粉丝点击