命令,我们知道有命令、命令者、和被命令者。代码如下:
public class Command {
//命令模式 本来很简单的一句话的事为啥要整个模式,这个模式最主要的是命令者和被命令者的分离
public interface command {//命令接口
void exe();
}
public static class MyCommand implements command {
private Receiver receiver;
public MyCommand(Receiver receiver) {
this.receiver = receiver;
}
@Override
public void exe() {
receiver.action();
}
}
public static class Receiver {//被命令者
public void action() {
System.out.println("command received!");
}
}
public static void main(String[] args) {
Receiver receiver = new Receiver();
command cmd = new MyCommand(receiver);//也可用set形式使被命令者与命令隔离
//这样我就可以把cmd命令到处传,谁想调都行
cmd.exe();//命令者调用
}
}
输出:
command received!
觉得容易理解的话面向对象的23种设计模式点这里