多级和分层状态机的设计

时间:2012-12-08 15:23:19

标签: java design-patterns state-machine

在网络编程中,您需要具有多个层次深度的状态机。

State Machine 1
     State Machine 2

     State Machine 3
          State Machine 4

此处状态机1包含两个状态机233还包含计算机4

根据外部机器的状态,消息应该通过内部状态机。此外,如果内部状态机中存在一些错误,则应将反馈给予上位机。

这样做有好办法吗?

现在我有一个if语句和旗帜的丛林为我做这件事。我一直面临着一些问题,即由于状态机的整个状态处于不可恢复的状态而未设置某个标志。

更新 我试图保持状态和机器静止。当请求将通过机器和状态时,请求本身将存储所需的所有元数据。在这种情况下,正常的状态机模式没有帮助。

1 个答案:

答案 0 :(得分:0)

State Pattern分隔州和上下文 Context 可以存储状态的层次结构,而状态子类本身并不知道这种层次结构。所有if语句都消失了,因为if下的每个部分都进入一个单独的状态子类。