标签:读书笔记 设计 test targe 特定 state 允许 改变 blank
状态模式定义:
当一个对象的内在状态改变时,允许改变其行为,这个对象看起来改变了其类
消除庞大的条件分支,将特定状态的行为放入一个对象中
生活中:开灯和关灯是两个状态
Context: 上下文环境,维护一个状态实例,定义当前的状态
State: 抽象状态类,定义一个接口,封装与Context的一个特定状态相关的行为
ConcreteState:具体状态.实现Context的一个特定状态相关的行为
场景: 12店之前是休闲状态, 之后是忙碌状态
优点:通过把各种状态判断逻辑分布到State的子类中,减少相互之间的依赖
使用场景 :当一个对象的行为取决于其状态,状态转换的条件表达式过于复杂,并且在运行时刻,根据状态改变他的行为
标签:读书笔记 设计 test targe 特定 state 允许 改变 blank
原文地址:http://www.cnblogs.com/liuconglin/p/6440693.html