状态图
状态图: 用来描述一个特定的对象所有可能的状态,以及由于各种事件的发生而引起的状态之间的转移和变化。
绘图元素:状态、事件、转换
以“请假状态图”为例
一个状态图包括一系列状态、事件以及状态之间的转换,其作用是能够为类图中每一个类进行动态行为说明,以获得对类的方法的细节描述的建模支持。
状态图提供了对象在其生命周期中可能出现的状态及其行为的描述。
一个状态图只能有一个初态,但终态可以有一个或多个,也可以没有终态。
状态:
状态是一种存在状况,它具有一定的时间稳定性。即在一段有限的时间内保持对象(或系统)的外在情况和内在特性的相对稳定
状态有两种不同的行为:事件和活动。事件是一个伴随状态迁移的瞬时发生的行为:活动则是发生在某个状态中的行为,往往需要一定的时间来完成,因此与状态名一起出现在有关的状态之中
一个状态一般包括3个部分:状态名称、可选的状态变量的变量名、变量值和可选的活动表
事件:
事件指的是发生的且引起某些动作执行的事情。事件不能存储,它不具有时间有效性。
事件触发状态的转移
转换:
是两个状态间的一种关系,表示对象将在当前状态中执行动作,并在某个特定事件发生或某个特定的条件满足时进入后继状态。 每个转移只允许有一个事件触发,一个事件只允许有一个动作。