状态模式

简介

允许对象在内部状态改变时改变它的行为。

使用场景:

  • 订单状态流转

  • TCP连接状态

  • 游戏角色状态

  • 工作流引擎

实现要点:

  • 状态接口定义行为

  • 具体状态类实现不同行为

  • 上下文持有当前状态

UML

spinner

代码示例

  1. 订单实体类

  1. 订单状态

  1. 订单状态接口

  1. 具体的状态

  1. 订单状态工厂

  1. 订单上下文

  1. 订单服务

  1. 使用方式

Last updated