23种设计模式之状态模式(State)

Posted 极简

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了23种设计模式之状态模式(State)相关的知识,希望对你有一定的参考价值。

状态模式是一种对象的行为型模式,允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。状态模式封装了状态的转换过程,但是它需要枚举可能的状态,因此,需要事先确定状态种类,这也导致在状态模式中增加新的状态类时将违反开闭原则,新的状态类的引入将需要修改与之能够进行转换的其他状态类的代码。状态模式的使用必然会增加系统类和对象的个数。

优点:定位指定状态的行为,并且针对不同状态来划分行为,使状态转换显式进行。

使用场景:

1)对象的行为依赖于其状态,并且该对象必须在运行时根据其状态修改其行为。

2)操作具有大量以及多部分组成的取决于对象状态的条件语句。

技术分享

State 模式

以上是关于23种设计模式之状态模式(State)的主要内容,如果未能解决你的问题,请参考以下文章

23行为型模式之状态模式

设计模式之状态模式(State)摘录

Java设计模式之状态模式

Unity与23种设计模式状态模式(State)

设计模式---状态变化模式之state状态模式(State)

JAVA设计模式之状态模式(state)