正文描述:《uml面向对象分析与建模-【6】状态图》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、—、概述在一•般的血向对象技术中,状态图又称为状态迁移图。描述了一个特定对象的所有可能状态以及山于各种事件的发牛而引起的状态之间的迁移。大多数面向对象技术都使用状态图来描述一个对彖在其生命周期中的行为。二、状态在所有动态图(序列图、协作图、状态图、活动图)中,消息是作为对象间的一种通信方式来表示的。消息包括简单消息、同步消息和异步消息。可以将一个简单消息和同步消息合并成一个消息。在UML中,对于状态的定义着重于对象行为的规则,状态描述了一个对象主命周期中的一个时间段。它可以用三种附加方式说明:在某些方而性质相似的一组对象值;一个对象等待一
2、些事件发生时的一段时间;对象执行持续活动的一段时间。状态代表的是对象行为积累的历史。按照在状态图中出现的时间顺序,状态可分为初态(初始状态)、中间状态(简单状态)和终态(终止状态);可以进入一个状态的内部,将其进一步细分成若干个内部状态(子状态),从而可以将状态分为组合状态和子状态;根据组合状态中子状态的互斥性,又可将组合状态分为并发组合状态和顺序组合状态。状态种类描述简单状态没有子结构的状态并发组合状态被分成两个或多个并发了状态的状态,当组合状态被激活时,所有的子状态均被并发激活顺序组合状态包含一个或多个不连接的子状态的状态,特别是当组
3、合状态被激活时,子状态也被激活初始状态伪状态,仅表明这是进入状态机真实状态的起点终止状态特殊状态,进入此状态表明完成了状态机的状态转换历程屮的所有活动结合状态伪状态,将两个转换连接成一次就可以完成的转换历史状态伪状态,它的激活保存了组成状态小先前被激活的状态子机器引用状态引用子机器的状态,该了机器被隐式地插入子机器引用状态的位置桩状态伪状态,用来在子机器引用状态中标识状态一个简单状态是没冇了结构的状态,只带冇一组转换和可能的入口和出口动作。如果一个状态内嵌套了若干个状态,则称该状态为超状态或组合状态,其屮被嵌套的状态称为子状态。子状态本身
4、仍然可以是一个组合状态。组合状态可以包含顺序状态的子状态,也对以包含并发状态的子状态。顺序状态又称为不相交状态,它们是一个一个顺序迁移的,不是并发存在。在一个嵌套的顺序状态机中最多有一个初态和一个终态。历史状态允许包含顺序子状态的组合状态记住在从该组合状态出发的迁移触发Z前的最后一个活动了状态。历史状态分为浅历史状态和深历史状态。浅历史状态保存并重新激活与它在同一个恢套层次上的状态。深历史状态对记住组合状态中恢套层次更深的状态。如果一个嵌套状态机到达一个终态,那么历史状态将会丢失其存储的历史。状态机由一系列对象的状态组成。是展示状态少状态
5、转换的图。是一个类的对象所冇可能的生命历程的模型。反映的是一个对彖在英生存周期中对所经历的相关事件做出反应的状态序列行为,以及对这些事件的反应。是一个对象的局部视图,一个将对象与其外部世界分离开来独立考察其行为的图。状态图展示了一个特定对象的所何可能状态以及由于各种事件的发生而引起的状态间的迁移。UML状态图描述了一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的事件做出反应。一个状态图基本上就是能在一个状态机屮发现的元素反应,也就是说,状态图可以包含分支、分岔、接合、动作状态、活动状态、对象、初态、终态和历史状态
6、等。事件是一个在吋间和空间上都占据一定位置的有意义的事情的规约。它可以是同步也可以是界步的。既可以是外部事件也可以是内部事件。外部事件指在系统和它的参与者之间传送的事件。内部事件是指系统内部的对象之间传送的时间。事件类型描述语法调用事件接收等待应答的对象的明确形式的同步请求Op(a:T)改变事件对布尔农达式的修改When(exp)信号事件接收一个对象间外在的、命名的、异步的通信Sname(a:T)时间事件绝对时间的到达或者一个相对时间的终结After(time)一个调用事件代表对一个操作的调用。改变事件是指对象处于某个状态下,一个变化或者
7、某些条件得到满足时触发的事件。时间事件是指对象进入某状态,经过一定的吋间或者到达某个绝对吋间后发生的时间。信号是由对象异步地发送并由另一个对象接收的具有名字的対象,它和简单的类有许多共同之处。从状态出发的迁移定义了处于此状态的对象对外界发牛的事件所做出的反应。迁移的种类描述语法入口动作进入某一状态时执行的动作entry/action出口动作离开某--状态时执行的动作exit/action外部迁移引起状态改变的迁移或自身迁移,同时执行一个具体的动作,包括引起入口动作和出口动作被执行的迁移e(a:T)[exp]/action内部迁移引起一个动
8、作的执行但不改变状态或不引起入口动作或出口动作的执行e(a:T)finner]/action完成迁移是指没有明确触发器事件的迁移。如果一个状态没有内部活动或者嵌套状态,则一旦入口和出口活动完成
显示全部收起
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。