设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State)

设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State)

状态模式state

概念

        State模式也叫状态模式,是行为设计模式的一种。State模式允许通过改变对象的内部状态而改变对象的行为,这个对象表现得就好像修改了它的类一样。

        状态模式主要解决的是当控制一个对象状态转换的条件表达式过于复杂时的情况。把状态的判断逻辑转译到表现不同状态的一系列类当中,可以把复杂的判断逻辑简化。

设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State) 设计模式:可复用面向对象软件及基础:4-8 对象行为模式:状态模式(State)

 

 

角色和职责

Context:用户对象

        拥有一个State类型的成员,以标识对象的当前状态;

State:接口或基类

        封装与Context的特定状态相关的行为;

ConcreteState:接口实现类或子类

        实现了一个与Context某个状态相关的行为。

适用于:

        对象的行为,依赖于它所处的当前状态。行为随状态改变而改变的场景。

适用于:通过用户的状态来改变对象的行为。

案例

 

来源:~怎么回事啊~

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年9月3日
下一篇 2020年9月3日

相关推荐