我有一个有许多状态的状态机A--B--C--D--E
。C
例如,A
如果某些条件得到验证,我有很多过渡。对于每个状态,我都有一个扩展抽象类的类State
,并且我有一个将每个转换方法委托给状态方法的管理器。问题是“国家可以直接调用经理转换方法吗?”。我在互联网上只看到过一个例子,其中有一个主类确切地知道转换发生了多少次(即insertQuarter()
, ejectQuarter()
, turnCrank()
, dispense()
)。我发现这样做的唯一方法是在状态中调用管理器转换方法。这是错误的做法还是不好的做法?
在此先感谢托比亚