Invoker是调用者(司令员),Receiver是被调用者(士兵),MyCommand是命令,实现了Command接口,持有接收对象!
/**
* @author: muyichun
* @date : 2016年3月23日18:11:35
* @function: 命令模式
*/
public class Main{
public static void main(String[] args) {
Receiver receiver = new Receiver();
Command command = new MyCommand(receiver);
Invoker invoker = new Invoker(command);
invoker.action();
}
}
//命令接口
interface Command{
public void exe();
}
//命令实现类
class MyCommand implements Command{
private Receiver receiver;
public MyCommand(Receiver receiver){
this.receiver = receiver;
}
@Override
public void exe() {
receiver.action();
}
}
//执行者
class Receiver {
public void action() {
System.out.println("command received!");
}
}
//命令官
class Invoker{
private Command command;
public Invoker(Command command){
this.command = command;
}
public void action(){
command.exe();
}
}
——贴上自己喜欢的代码!
本文深入探讨了命令模式的基本概念、实现方式及其在软件设计中的实际应用,通过具体示例展示了如何使用命令模式简化操作流程并提高代码复用性。
1778

被折叠的 条评论
为什么被折叠?



