hand first 设计模式 - 命令模式
2009-09-17 00:00:00 来源:WEB开发网命令模式: 将请求封闭成对象,这可以让你使用不同的请求,队列.或者日志请求来参数化其他对象.命令模式式可支持撤销技术操作.
实例需求:
一个摇控器.可以控制N个电器设备的开关,以及相关的操作.还可以一些组合操作.有一个撤消操作.(需求见附件)
命令接口
Java代码
public interface Command {
//执行相关命令
public void execute();
//撤消相关命令
public void undo();
}
开关接口
Java代码
public interface Switch {
public void on();
public void off();
}
实例灯
Java代码
public class Light implements Switch{
private String name;
public Light(String name){
this.name = name;
}
//开操作
public void on(){
System.out.println(name +" is on");
}
//关操作
public void off(){
System.out.println(name +" is off");
}
}
开灯命令
Java代码
public class LightOnCommand implements Command {
private Light light;
public LightOnCommand(Light light) {
this.light = light;
}
@Override
//开灯
public void execute() {
// TODO Auto-generated method stub
light.on();
}
@Override
//撤消操作.因为灯只有二种状态所以撤消操作就是关灯
public void undo() {
// TODO Auto-generated method stub
light.off();
}
}
- ››设计模式:工厂方法模式
- ››设计模式一 - Simple Factory, Factory Method, A...
- ››设计模式重构应用---Decorator模式
- ››设计模式重构应用---Template Method模式
- ››hand first 设计模式 - 装饰者模式
- ››hand first 设计模式 - 工厂模式
- ››hand first 设计模式 - 抽象工厂模式
- ››hand first 设计模式 - 单例模式
- ››hand first 设计模式 - 命令模式
- ››hand first 设计模式 -适配器模式
- ››hand first 设计模式 -外观模式
- ››hand first 设计模式 -模板方法模式
更多精彩
赞助商链接