1.状态模式:通过不同的状态来选择不同的操作的.
如if(state1){
操作1
}else if(state2){
操作2
}else if(state3){
操作3
}.....
使用状态模式与创建者模式消除if......else .......
抽象一个状态类(State),所有操作都继承这个类,实现一个生产工厂(CreateState),让调用者可以获得正确的对象.
修改后的为:
State state=CreateState.getState(...)
state.action()
2.面向接口编程,过程和上面的一样.只是判断的条件不同,上面的是根据状态来选择操作.下面的可能根据数据类型......是一个可以表明一个数据特征的.