一. 定义
将一个请求封装成一个对象,从而让用户使用不同的请求将客户端参数化。 支持请求排队,记录,请求日志以及撤销操作。
二. 应用场景
当需要将方法调用包装成一个对象,以延时方法调用,或者让其他组件在对其内部细节不了解的情况下进行调用的时候可以使用命令模式。
三. 角色划分
角色一:接收者(Recever作用:负责具体的功能实现->具体的实现细节)
角色二: 命令接口(协议) (命令抽象)、
角色三: 具体的命令(ConcerteCommand:具体的命令,作用:负责调用接受者的逻辑方法。行为方法)
角色四: 请求者角色(Invoke,调用执行命令)
角色五:客户端
最后客户端调用的结果
命令模式执行的流程