概念
一个状态图表示一个状态机,主要用于表现从一个状态到另一个状态的控制流,不仅可以展现一个对象拥有的状态,还可以说明事件如何随着时间的推移来影响这些状态
1)状态机
1. 概念
是一种记录给定时刻状态的设备,它可以 根据各种不同的输入对每个给定的变化而改变其状态或引发一个动作
2. 组成
状态
在生命周期中的一种状况,处于某个状态的对象必然会满足某些条件,执行某些动作或者等待某些事件
动作
状态机中可以执行的原子操作,即一旦被执行便不能被中断
事件
指的是发生在时间和空间商的对状态机来讲有意义的那些事情,通常会引起状态的变迁
活动
状态机进行的非原子操作
转换
值得是两个不同状态之间的一种关系,表明对象将在第一个状态中执行一定的动作,并且在满足某个特定条件下由某个事件触发进入第二个状态
3. 使用
适合对局部、细节进行建模,通常并依附于一个类,描述该类的实例对接收事件的响应
2)状态图
本质上就是一个特殊的状态机进行动态建模
作用:
1. 清晰描述了状态转换时所必须的触发事件、监护条件和动作,有利于开发人员避免程序中非法事件的进入
2. 可以清晰地看出事件的执行顺序
3. 避免程序员在开发程序时避免出现事件错序的情况
4. 可以更好的描述工作流因不同的条件发生的分支
组成
1)状态