gpt4 book ai didi

uml - 复合状态和内部转换

转载 作者:行者123 更新时间:2023-12-04 21:19:50 25 4
gpt4 key购买 nike

前提是我现在在StateB中。 Sig2来了。因此,不会执行任何进入或退出操作,而只会执行Act5。到目前为止,一切都很好。

现在我们进入StateC,但是这次是Sig1。定义了内部转换,但处于父复合状态。我是否必须从StateC退出,是否要执行Act2并转到初始连接器并输入StateB?

我在UML标准中找不到此问题的答案。

State machine

最佳答案

您无需退出StateC,拥有状态的内部转换始终可以发生,只要您处于其中的某些子状态即可。


14.5.12.3文字


内部


表示转换(如果触发)在不退出或进入源状态的情况下发生(即,不
导致状态更改)。这意味着将不会调用源国的进入或退出条件。一个
即使SateMachine位于关联状态内嵌套的一个或多个区域中,也可以进行内部转换。




这很有意义---您始终处于复合状态的某些子状态。 (一旦进入复合状态,它将立即(在entry行为之后)进入第一个状态)。

当然,内部转换不会更改状态配置,因此它将保持不变(<StateA::StateC>)。

当然,所有这些都假定您已传送到StateC,因为该状态不可访问。

关于uml - 复合状态和内部转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33807515/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com