网站大量收购闲置独家精品文档,联系QQ:2885784924

Chap面向对象方法学引论.ppt

  1. 1、本文档共92页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Chap面向对象方法学引论

* 关联类 右图是一个电梯系统的类模型,队列就是电梯控制器类与电梯类的关联关系上的关联类。从图中可以看出,一个电梯控制器控制着4台电梯,这样,控制器和电梯之间的实际连接就有4个,每个连接都对应一个队列(对象),每个队列(对象)存储着来自控制器和电梯内部按钮的请求服务信息。电梯控制器通过读取队列信息,选择一个合适的电梯为乘客服务。 * 聚集 聚集也称为聚合,表示类与类之间的关系是整体与部分的关系。 在陈述需求时使用的“包含”、“组成”、“分为…部分”等字句,往往意味着存在聚集关系。 还有两种特殊的聚集关系,分别是共享聚集和组合聚集。 * 共享聚集 如果在聚集关系中处于部分方的对象可同时参与多个处于整体方对象的构成,称为共享聚集. 例:一个课题组包含许多成员,每个成员又可以是另一个课题组的成员,则课题组和成员之间是共享聚集关系。 * 组合聚集 如果部分类完全隶属于整体类,部分与整体共存,整体不存在了部分也会随之消失(或失去存在价值了),则该聚集称为组合聚集(简称为组成)。 例如,人由头、身躯和肢组成。 * 泛化 UML中的泛化关系就是通常所说的继承关系,它是通用元素和具体元素之间的一种分类关系。就是“一般——特殊”关系。 普通泛化 受限泛化 * 普通泛化 普通泛化与9.2.2节中讲过的继承基本相同。 没有具体对象的类称为抽象类。抽象类通常作为父类,用于描述其他类(子类)的公共属性和行为。 * 例子分析 * 受限泛化 给泛化关系附加约束条件,以进一步说明该泛化关系的使用方法或扩充方法,这样的泛化关系称为受限泛化。 预定义的约束有4种:多重、不相交、完全和不完全。这些约束都是语义约束。 * 受限泛化 多重继承指的是,一个子类可以同时多次继承同一个上层基类。 与多重继承相反的是不相交继承,即一个子类不能多次继承同一个基类(这样的基类相当于C十十语言中的虚基类)。 完全继承指的是父类的所有子类都已在类图中穷举出来了,图示符号是指定{完全}约束。 不完全继承与完全继承恰好相反,父类的子类并没有都穷举出来,随着对问题理解的深入,可不断补充和维护,这为日后系统的扩充和维护带来很大方便。不完全继承是一般情况下默认的继承关系。 * 依赖和细化 依赖关系描述两个模型元素(类、用例等)之间的语义连接关系:其中一个模型元素是独立的,另一个模型元素不是独立的,它依赖于独立的模型元素,如果独立的模型元素改变了,将影响依赖于它的模型元素。 例如,一个类使用另一个类的对象作为操作的参数,一个类用另一个类的对象作为它的数据成员,一个类向另一个类发消息等,这样的两个类之间都存在依赖关系。 * 细化关系 当对同一个事物在不同抽象层次上描述时,这些描述之间具有细化关系。 假设两个模型元素A和B描述同一个事物,它们的区别是抽象层次不同,如果B是在A的基础上的更详细的描述,则称B细化了A,或称A细化成了B。 * 动态模型 动态模型表示瞬时的、行为化的系统的“控制”性质,它规定了对象模型中的对象的合法变化序列。 各对象之间相互触发(即作用),就形成了一系列的状态变化。 通常,用状态图来描绘对象的状态、触发状态转换的事件、以及对象的行为(对事件的响应)。 动态模型是基于事件共享而互相关联的一组状态图的集合。 * 动态模型 事件 事件是某个特定时刻所发生的事情,它是对引起对象从一种状态转换到另一种状态的现实世界中的事件的抽象。 状态 状态是对象在其生命周期中的某个特定阶段所处的某种情形,它是对影响对象行为的属性值的一种抽象。 行为 行为指对象达到某种状态时所做的一系列处理操作。 * 动态模型 表示方法 状态图中使用的主要表示符号: * 例子 * 功能模型 功能模型表示变化的系统的“功能”性质,它指明了系统应该“做什么。 通常,功能模型由一组数据流图组成。 与其他两种模型的关系 功能模型指明了系统应该“做什么”; 动态模型明确规定了什么时候(即在何种状态下接受了什么事件的触发)做; 对象模型则定义了做事情的实体。 * 用例图 一幅用例图包含的模型元素有系统、行为者、用例及用例之间的关系。 下例为自动售货机系统的用例图。图中的方框代表系统,椭圆代表用例(售货、供货和取货款是自动售货机系统的典型用例),线条人代表行为者,它们之间的连线表示关系。 * 系统 系统被看作是一个提供用例的黑盒子,内部如何工作、用例如何实现,这些对于建立用例模型来说都是不重要的。 代表系统的方框的边线表示系统的边界,用于划定系统的功能范围,定义了系统所具有的功能。描述该系统功能的用例置于方框内,代表外部实体的行为者置于方框外。 * 用例 一个用例是可以被行为者感受到的、系统的一个完整的功能。 在UML中把用例定义成系统完成的一系列动作,这些动作除了完成系统内部的计算与工作外,还包括与一些行为者的通信。

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档