【答案解析】[解析] 命令(Command)模式是一种对象的行为型模式,类似于传统程序设计方法中的回调机制,它将一个请求封装为一个对象,从而使得可用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。命令模式是对命令的封装,将发出命令的责任和执行命令的责任分割开,委派给不同的对象,以实现发送者和接收者完全解耦,提供更大的灵活性和可扩展性。
Command模式的结构如图2所示。
[*]
图2 Command模式结构图
其中,
● 类Command声明执行操作的接口。
● ConcreteCommand将一个接收者对象绑定于一个动作,并调用接收者相应的操作,以实现execute方法。
● 类Client创建一个ConcreteCommand对象并设定它的接收者。
● 类Invoker要求Command执行这个请求。
● 类Receiver知道如何实施与执行一个请求相关的操作。任何类都可能作为接收者。
在“点菜”这个实例中,订单是厨师(Cook)与action(按订单加工)之间的绑定,厨师接受订单并对之负责。所以在该实例中,与Command类对应的类是“Order”,与Receiver对应的类是“Cook”。