- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
7.4 转移 事件 事件之一的信号常用对象类图形表示,但是必须加上构造型signal。 事件也可以只发生而不触发对象的状态转移。在这种情况下,若事件不是被声明为一个延迟事件,它必定被丢失。 计算机应用技术系教师专用 (UML系统分析与设计) 7.4 转移 事件 事件的种类有:入口事件、出口事件、DO事件、信号事件、调用事件、改变事件、时间事件等。 入口事件表示一个入口动作序列,用关键字“entry”说明,它在进入状态时执行。入口事件可以不带参数和保安条件,因为它是隐式调用的。入口事件的动作是原子的,不能避开,而且先于任何内部活动或转移。 出口事件表示一个出口动作序列,用关键字“exit”说明,它在退出状态时执行。出口事件可以不带参数和保安条件,因为它是隐式调用的。 入口事件和出口事件是原子的,不可避免。 计算机应用技术系教师专用 (UML系统分析与设计) 7.4 转移 事件 DO事件表示对一个嵌套状态机的调用,用关键字“do”说明。 调用事件表示调用者对操作的请求,调用事件至少涉及两个以上的对象,一个对象请求调用另一个对象的操作。 调用事件一般为同步调用,也可以是异步调用。如果调用者需等待操作的完成,则是同步调用,否则是异步调用。 调用事件的定义格式为: 事件名(参数列表) 参数的格式为:参数名:类型表达式 计算机应用技术系教师专用 (UML系统分析与设计) 7.4 转移 事件 在状态机图中,可以使用信号发送构造型图标和信号接收构造型图标表示信号事件。 信号发送构造型图标是一个矩形的一侧为尖角,它代表一个信号的发送,其中含有发送子句。 信号接收构造型图标是一个矩形的一侧为凹角,它代表一个信号的接收,其中含有事件名称。 计算机应用技术系教师专用 (UML系统分析与设计) 7.4 转移 事件 改变事件表示一个通知信息,通知某个条件已为“真”, 以触发一个转移。 改变事件用关键字“when”说明,后面带有括在圆括号中的布尔表达式,并且跟有动作,意指当该布尔表达式为真时,执行规定的动作,引起状态的转移。 计算机应用技术系教师专用 (UML系统分析与设计) 7.4 转移 事件 时间事件表示一个通知信息,通知自从进入状态以来某个时间期限已到,或者已经到了某个特定的日期/时间,以触发一个转移。 时间事件用关键字“after”说明,带有括在圆括号中的时间表达式,并且后跟动作。 计算机应用技术系教师专用 (UML系统分析与设计) 7.4 转移 事件 延迟事件是在本状态不处理、推迟或排队等到另外一个状态才处理的事件。 延迟事件需要在状态的图标中列出延迟事件名,其后跟一个斜杠“/”和特定的动作“defer”。 在建立状态机图时,将会发现许多事件,其中有些事件可以作为状态转移的事件触发子;另一些事件意义不大,可以忽略;还有一些事件可以延迟到以后再起作用。 计算机应用技术系教师专用 (UML系统分析与设计) 7.4 转移 条件 条件(保安条件)是为触发转移必须满足的条件。 一个状态的转移可能是自动发生的,也可能是在满足某个条件的情况下发生的。当转移按照判定而分支时,条件是判定的依据。 条件一般用一个布尔表达式表示,可能涉及到正在触发的事件的参数和属性。 在事件发生时,一个条件对于一个转移只求值一次。如果该转移再次被触发,则该条件可以再次求值。 计算机应用技术系教师专用 (UML系统分析与设计) 7.4 转移 动作 动作是一组可执行语句或计算过程。一个动作可以包括操作调用,创建或销毁另一个对象,发送一个信号给另一个对象等。 动作可以有一个动作表达式,它由用逗号分隔的动作子句表构成。 动作子句的格式为: 动作子句 返回表 := 操作名 [变量表] 动作子句是一个调用动作(Call Action),它引起对一个操作的调用,当转移被触发时执行。 操作的返回值组成返回表,该值应是随后的操作的实在参数。 计算机应用技术系教师专用 (UML系统分析与设计) 7.4 转移 动作 动作的类型有:入口动作,出口动作,调用动作,延迟动作,创建动作,销毁动作,返回动作,终止动作,发送动作,本地调用动作,例外动作等。 入口动作和出口动作是在内部转移框中规定的,当进入或离开该状态时执行的动作。 标有关键字“defer”的动作称为延迟动作,用于延迟一个事件。 返回动作返回一个值或值集给调用者。 终止动作引起对象的自析构(Self-Destruction),即自动销毁,结束对象的生存。 计算机应用技术系教师专用 (UML系统分析与设计) 7.4 转移 计算机应用技术系教师专用 (UML系统分析与设计) 发送动作异步发送一个信号。发送动作可用专门发送子句表示,其图形形式如图所示。 发送动作还可以利用信号发送与接收的
文档评论(0)