软件设计中的经典模式:命令、策略与组合模式解析
1. 命令模式(Command Pattern)
命令模式为处理用户请求提供了一个标准接口。每个请求被封装在一个称为命令的对象中。该模式主要包含三个类: Command
、 CommandManager
和 Invoker
。
- Command
类 :代表单个行为的封装。应用程序中的每个行为,如保存或删除,都可以建模为一个命令。以下是 Command
接口的定义:
package wrox.pattern.command;
public interface Command {
public void execute();
}
例如,将一个计算销售总额的方法封装为命令:
public CalculateSale implements Command {
private Sale sale;
public void setSale( Sale sale ) {
this.sale = sale;
}
public void execute( ) {
// calculate the sale.
}
}
为了演示类之间的交互,使用一个空命令: