我正在为一个小的状态图建模。每个“状态”类都需要有它的转换类。如何确保开发人员为每个状态类创建一个转换类?状态和转换都是从它们相应的抽象类中派生出来的。编辑:我当时正在研究头先设计模式,我试着创造自己的状态。我被困在这里了。不是家庭作业。
6jjcrrmo1#
如果状态对象至少需要一个转换,则在构造函数中需要一个转换对象或一组转换。
class Transition { ... } class State { Collection<Transition> transitions; ... State(Collection<Transition> t){ //make sure the collection is non empty ... //save the transition transitions = t; } ... }
13z8s7eq2#
在一般的fsm中,状态节点可以有任意数量的传入和传出转换弧(包括零传入-开始状态或零传出-结束状态,但不能两者兼有)。问题并不像每个状态一个转换那么简单。state和transition对象本身无法验证整个fsm。这必须在状态和转换的“外部”发生。
2条答案
按热度按时间6jjcrrmo1#
如果状态对象至少需要一个转换,则在构造函数中需要一个转换对象或一组转换。
13z8s7eq2#
在一般的fsm中,状态节点可以有任意数量的传入和传出转换弧(包括零传入-开始状态或零传出-结束状态,但不能两者兼有)。问题并不像每个状态一个转换那么简单。state和transition对象本身无法验证整个fsm。这必须在状态和转换的“外部”发生。