统一建模语言UML(五):状态图
要创建状态图,首先要找出出哪些实体需要使用状态图进一步建模。一般来说,不需要给所有的类都创建状态图,只有具有重要动态行为的类才需要。
从另一个角度看,状态图应该用于复杂的实体,而不必用于具有复杂行为的实体。
所以状态图描述的对象就是实体。
先说一下状态机和状态图之间的关系:
♦状态机:状态机是展示状态与状态转换的图,包含了一个类的对象在其生命期间所有状态的序列以及对象对接受到的事件所产生的反应。
♦状态图:表示状态机,一个状态机可以用多个状态图描述。
♦状态图表现从一个状态到另一个状态的控制流。
UML的状态图主要用于建立类的一个对象在其生存期间的动态行为,表现一个对象所经历的状态序列,引起状态转移的事件,以及因状态转移而伴随的动作。
状态图的目的是为具有以下两个特性的属性建模:
▶属性拥有很少的值
▶属性在这些值之间的转移有一定的限制
状态种类:
▶简单状态:简单状态是指不包含其他状态的状态。简单状态没有子结构,但它可以具有内部转换、入口动作和出口动作等。
▶组成状态:组成状态是可以包含一些嵌套的子状态的状态。组成状态可以使用“与”关系分解为并发子状态,或者通过“或”关系分解为互相排斥的顺序子状态。
以下内容了解一下: