java设计模式----状态模式

状态模式:

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

要点:

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

  2、和程序状态机(PSM)不同,状态模式用类代表状态

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

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

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

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

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

  8、状态改变可以由State类或Context类控制

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

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

posted @ 2017-08-06 21:54  stanljj  阅读(114)  评论(0编辑  收藏  举报