所谓状态图就是要描述一个对象的生命周期的整个过程中或某些阶段的状态的变化的过程,以及随着状态的变化产生的动作过动作序列。
简单化的状态图可以只由状态、事件(触发器)、动作(活动)和转换组成。
事件= 对可观察的发生事情的类型,包括:
(1)交互:
同步的对象操作调用(调用事件)
异步的信号接收(信号事件)
(2)即时时刻的发生(时间事件):
时间间隔
日历/时钟时间
(3)某些实体的数值上的变化(变化事件)
尽管不同类型的事件的实现方式都不相同,但在状态机图上却具有相同的表示,体现了状态机图很强的概括和抽象机制。
状态的表示、内部转换、延迟事件、伪状态与最终状态
内部转换在语义上它们等价于自转换,只是不退出状态和再进入状态,不会导致状态的改变。
内部转换在比较复杂的情况下还可以带一个坚守条件,就是说来了一个事件,要求这个人干什么事情这是个事件,然后呢这个人必须得满足内部的某一个条件,称之为监护条件,然后才能够做,如果他不满足这个监护条件呢,他就不会做。
延迟事件是指在当前状态下暂不处理,但将推迟到该对象的另一个状态下排队处理的事件。延迟事件和主动对象和被动对象没有关系,这种机制是跟主动对象和被动对象的状态图没有任何关系
伪状态实际上并不是一种状态,只是为了加强状态机图的可视化表示而引入的一些图形符号,都是结点(顶点)型的图形成分。初始状态和终止状态都是伪状态。
伪状态和一