UML学习——状态图(四)
1.什么是UML状态图
UML状态图是描述类对象可能经历的所有状态的模型图,描述了对象基于事件反应的动态行为。显示实体根据当时的状态做出具体的动作。
2.UML类图的作用。
UML类图的作用是研究类对象,角色,子系统或者其他组件之间的实时行为。
3.UML状态图的绘制
3.1 状态图的模型组成元素
状态,转换,时间
3.2状态的表示法
状态由两部分组成:名称和内部动作
名称:表示状态的名字
内部动作:表示进入或者走出此状态的应该执行的动作。内部动作可以分为以下四种类型。
entry:表示进入该状态时该进行的动作。
exit:表示退出该状态时该进行的动作。
do:表示该状态下进行的动作。
on:表示该状态下,发生某件事件时发生的动作。
一个状态可以包含多个内部动作。
如图:
3.3转换的表示法
转换:原状态在满足一定的条件,或者触发某个事件时,执行完内部动作后,转到目标状态的过程。
转换包含的元素:原状态,目标状态,触发事件,监护条件,执行动作。
触发事件:引起状态转换的事件,如:信号,调用,时间等。
监护条件:状态转化必须满足的条件,是一个Boolean值,不同转化的监护条件不同,但是触发事件可以相同。
执行动作:一组可执行语句或者计算处理的过程。
3.4 转换的分类
转换通常分为内部转换,外部转换,完成转换,复合转换四种。
内部转换:不离开状态本身,执行完动作后依旧在此状态。
外部转换:最常见的转换,状态从原状态转换到目标状态、
完成转换:或者叫自转换,无触发事件。
复合转换:由简单转换组成,通过分支判断将简单转换组合起来。
3.5状态的绘制
初始状态:用一个实心圆表示,一个状态图中只有一个
终止状态:用一个包含实心圆的空心圆表示。
子状态:有子状态的状态称为复合状态。
3.6状态图模型
3.7子状态图表示