现在的位置: 首页 > 综合 > 正文

【设计模式】状态模式

2017年02月10日 ⁄ 综合 ⁄ 共 416字 ⁄ 字号 评论关闭

OO基础

抽象

封装

多态

继承


OO原则

封装变化

多用组合,少用继承

针对接口编程,不针对实现编程

为交互对象的松耦合设计而努力

类应该对扩展开放,对修改关闭

依赖抽象,不要依赖具体类

只和朋友交谈

别找我,我会找你

类应该只有一个改变的理由


OO模式

状态模式——允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。


1. 状态模式允许一个对象基于内部状态而拥有不同的行为。

2. 和程序状态机不同,状态模式用类代表状态。

3. Context会将行为委托给当前状态对象。

4. 通过将每个状态封装进一个类,我们把以后需要做的任何改变局部化了。

5. 状态模式和策略模式有相同的类图,但是它们的意图不同。

6. 策略模式通常会用行为或算法来配置Context类。

7. 状态模式允许Context随着状态的改变而改变行为。

8. 状态转换可以由State类或Context类控制。

9. 使用状态模式通常会导致设计中类的数目大量增加。

10. 状态类可以被多个Context实例共享。

抱歉!评论已关闭.