首页 > 代码库 > 23种设计模式之状态模式(State)
23种设计模式之状态模式(State)
状态模式是一种对象的行为型模式,允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。状态模式封装了状态的转换过程,但是它需要枚举可能的状态,因此,需要事先确定状态种类,这也导致在状态模式中增加新的状态类时将违反开闭原则,新的状态类的引入将需要修改与之能够进行转换的其他状态类的代码。状态模式的使用必然会增加系统类和对象的个数。
优点:定位指定状态的行为,并且针对不同状态来划分行为,使状态转换显式进行。
使用场景:
1)对象的行为依赖于其状态,并且该对象必须在运行时根据其状态修改其行为。
2)操作具有大量以及多部分组成的取决于对象状态的条件语句。
State 模式
23种设计模式之状态模式(State)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。