状态模式
状态机: 状态机有 3 个组成部分:状态(State)、事件(Event)、动作(Action)。其中,事件也称为转移条件(Transition Condition)。事件触发状态的转移及动作的执行
简单来说:就是我们有这样一组业务,通过遇到一组时间,发生一组动作,从而转变了状态
通常实现方法
1.分支逻辑法:
2.查表法
3.状态模式
分支逻辑通常会使我们的类变得臃肿 直接强行装换自己的状态与数据
查表法:也不适合逻辑比较复杂的动作,把状态与事件组成二维数组,直接从数组中取出我们遇到事件后的状态
状态模式:通过分离每种状态类,与操作类双向依赖,操作类执行状态类的事件来重置自己的状态类,状态类执行动作时候,常常需要更新操作类的一些属性
评论区