状态(State)模式
对于有状态的对象,状态变化时,如果使用if-else或者swith-case来做状态判断,执行不同的逻辑。
- 模式动机
- 模式定义状态模式(State Pattern) :允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。其别名为状态对象(Objects for States),状态模式是一种对象行为型模式。
- 模式结构状态模式包含如下角色:
- Context: 环境类
- State: 抽象状态类
- ConcreteState: 具体状态类
- 时序图
- 代码分析
- 模式分析
- 实例
- 简单工厂模式的有点
- 简单工厂模式的缺点
- 适用环境
- 模式应用
- 总结