面向对象技术与UML——状态图

状态图是一种建模工具,用于描述对象在生命周期中的不同状态及其转换。它包括初始和最终状态、状态之间的转换、事件触发、动作和条件。状态可以有进入、退出和持续活动。转换通过箭头表示,涉及事件、条件和动作。事件包括信号、调用、时间等。状态图还包括决策点、同步和组合状态。绘制状态图需要明确所有状态、事件和条件,然后逐步构建各个元素。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、定义:描述了一个特定对象的所有可能状态及各种事件发生而引起的状态的转移
2、认识:
	1)大多数生命在一生中经历了不同状态
	2)在一个特定时期,处于一种状态
	3)存在引起变化的各种事件
	4)事物在其状态间按照次序变化
	5)事物状态间转移是瞬时的
	6)事件发生时,可采取一些动作
3、状态图的表示
	1)表示:用圆角矩形,分状态名称、属性、动作三栏
	2)状态名称:名词短语
		 状态变量:属性及值
		 活动列表:状态到状态转换时候需要做的事情
		 	1> 进入状态动作 entry / 活动
		 	2> 退出状态动作 exit / 活动
		 	3> 在状态中持续做的动作 do / 动作
		 活动表示:
		 	动作标号 / 动作表达式
	3)两个伪状态
		1> 初态,用黑球表示,表示状态图的缺省开始位置,仅有一个
		2> 终态,在是新黑球外边加个圈,表示事物的终结,可 0-n 个
	4)转换:
		1> 状态间的转换
				两个状态间转换,当某个事件发生时,在满足一定条件,事物从一种状态转移到
			另一种状态,并执行一定动作
				表示:一条带箭头的实线
			1】源状态
			2】事件触发
			3】判定条件
			4】动作:转换伴随的动作
			5】目标状态
		2> 自身转换:收到一个事件,退出当前状态,条件不足,再返回当前状态,执行了
			entry/ 动作   exit / 动作
		3> 内部转换:收到了事件,可退出当前状态,执行某些动作
	5)事件
		1> 信号事件:异步消息
		2> 调用事件:同步消息
		3> 时间事件
		4> 改变事件
		5> 延时事件:响应事件是延迟到某个事件执行
	6)两个概念
		决策点:分组转移到不同的方向,用空心菱形表示
		同步:并发转移

图示
在这里插入图片描述

	7)组合状态
		由两个或者多个子状态组成,子状态是顺序的或并发的
		1> 顺序子状态
		2> 并发子状态
		3> 复合状态

图示
在这里插入图片描述


4、画状态图
	1> 设置语境:所有状态、事件、监护条件
	2> 建立初态和终态
	3> 给出对象属性,确定稳定状态
	4> 给出不同状态
	5> 用转换连接
	6> 给出相应的监护条件及伴随动作事件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值