知识卡片
内部活动与自转换的区别
内容
内部活动(internal activity)是状态在不发生转换的情况下响应事件的方式,写法是把事件、警戒条件、活动直接放进状态框内部。它和自转换(self-transition,转回同一状态的转换)效果相似,但有关键区别:自转换会触发状态的[[入口活动与出口活动|入口活动和出口活动]],内部活动不会触发。这个触发与否的差异,才是判断该用内部活动还是自转换的关键依据,而非表面上看起来一样。
参考来源
- 位置:《UML精粹:标准对象建模语言简明指南(第3版)》第10章《状态机图》(源文件:_epub-src/EPUB/9.xhtml)
- 结论依据:原文说明"内部活动类似于自转换(self-transition):转回到同一状态的转换……然而,内部活动不触发入口活动和出口活动,这就是内部活动和自转换之间的区别"。
- 原始内容:状态可以在没有转换时响应事件,使用内部活动(internal activity):把事件、警戒条件和活动放在状态框里面……内部活动类似于自转换(self-transition):转回到同一状态的转换……然而,内部活动不触发入口活动和出口活动,这就是内部活动和自转换之间的区别。