命令模式是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。

命令模式也就是一个用户发送请求,调用者接收命令,再将命令发送给接受者,最后接收者作出相应的过程

命令模式的实现:

1. 创建接受者

public class Receiver {
public void action(){
System.out.println("接受者执行方法");
}
}

2. 创建命令

public class Command {
private Receiver receiver;

public Command(){
receiver = new Receiver();
}

public void execute(){
System.out.println("命令传到了接收者");
receiver.action();
}
}

3. 创建调用者

public class Invoker {
private Command command;
public Invoker(Command command){
this.command = command;
}

public void send(){
System.out.println("调用者收到命令");
command.execute();
}
}

4. 用户发出请求

public class CommandMain {
public static void main(String[] args) {
Command command = new Command();
Invoker invoker = new Invoker(command);
System.out.println("用户发起请求");
invoker.send();
}
}

【每天一个java设计模式(十五)】 - 命令模式_命令模式