- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
46计计第二部分对基本结构建模.PDF
下载
第5章
关 系
本章内容
• 依赖、泛化和关联关系
• 对简单依赖建模
• 对单继承建模
• 对结构关系建模
• 创建关系网
当建造抽象时,你就会发现类很少单独存在。相反,大多数类以几种方式相互协作。因此,
当对系统建模时,不仅要识别形成系统词汇的事物,而且还必须对这些事物如何相互联系建模。
在面向对象的建模中,有 3种特别重要的关系:依赖 (d e p e n d e n c y ),它表示类之间的使用关
系(包括精化、跟踪和绑定关系);泛化 (g e n e r a l i z a t i o n ),它把一般类连接到它的特殊类;关
联 (a s s o c i a t i o n ),它表示对象之间的结构关系。其中的每一种关系都为组织抽象提供了不同的
方法。【在第1 0章中讨论关系的高级特征。】
构造关系网与创建类之间职责的均衡分布是相似的。过分细致的设计,将导致关系混乱,
使得模型不可理解;对设计考虑的过少,将会丢失系统中以一定方式协作的事物所含的许多有
用信息。
5.1 入门
如果你正在建造一所房子,像墙、门、窗户、橱柜和照明灯具这样的事物将形成部分词汇。
然而这些事物都不是单独存在的。墙要与别的墙相连接,门窗要安在墙上,形成分别供人们出
入和采光的开口。橱柜和照明灯具自然要安在墙上和天花板上。把墙、门、窗户、橱柜和照明
灯具组合在一起,就形成了像房间这样较高层次的事物。
在这些事物中,不仅能发现结构关系,而且也能发现其他种类的关系。例如,房子肯定有
窗户,但窗户的种类可能有很多。可能有不能开的凸型大窗户和能开的小厨房窗户。一些窗户
能上下开;而另一些窗户(像通向庭院的窗户)可以左右拉开。一些窗户仅有一块玻璃,另一
些窗户有两块玻璃。无论它们多么不同,它们都具有一些基本的窗户要素:每个窗户都是墙上
的一个开口,被设计用于采光和通气,有时还能过人。
在U M L 中,事物之间相互联系的方式,无论是逻辑上的还是物理上的,都被建模为关系。
在面向对象的建模中,有 3种最重要的关系:依赖、泛化和关联。
依赖 (d e p e n d e n c y )是使用关系。例如,水管依赖水加热器对它们所运送的水进行加热。
第5章 关 系计计43
下载
泛化 (g e n e r a l i z a t i o n )把一般类连接到较为特殊的类,也称为超类 / 子类关系或父/ 子关系。
例如,凸窗是一种带有固定窗格的大窗户;通向庭院的窗是一种带有向两边开的窗格的窗户。
关联 (a s s o c i a t i o n )是一种实例之间的结构关系。例如,房间是由墙和一些其他事物组成的,
墙体可以镶嵌门窗,管道可以穿过墙体。
这3种关系覆盖了大部分事物之间相互协作的重要方式。显然,这 3种关系也能很好地映射
到大多数面向对象编程语言所提供的连接对象的方式。【另外几种关系,如实现和精化,在第 1 0章中讨
论。】
U M L对每种关系都提供了一种图形表示,如图 5 - 1所示。这种表示法允许脱离具体的编程语
言而对关系进行可视化,在某种程度上可使你强调关系的最重要的部分:关系名、关系所连接
的事物和关系的特性。
依赖
泛化
关联
图5-1 关系
5.2 术语和概念
关系 (re l a t i o n s h i p )是事物之间的联系。在面向对象的建模中,最重要的 3种关系是依赖、
泛化和关联。在图形上,把关系画成一条线,并用不同的线区别关系的种类。
1. 依赖
依赖 (d e p e n d e n c y )是一种使用关系,它说明一个事物(如类 E v e n t)规格说明的变化可能
影响到使用它的另一个事物(如类 W i n d o w),但反之未必。在图形上,把依赖画成一条有向的
虚线,指向被依赖的事物。当要指明一个事物使用另一个事物时,就使用依赖。
在大多数情况下,在类的语境中用依赖指明一个类把另一个类作为它
文档评论(0)