UML类图中的四种关系深入剖析

本节和大家一起看一下UML类图中的关系,UML类图中的关系分为四种:泛化、依赖、关联、实现,希望通过本节的介绍大家对UML类图关系有清晰的认识,下面就让我们一起来看一下它的四种关系吧。

成都创新互联公司专注于企业全网营销推广、网站重做改版、枣阳网站定制设计、自适应品牌网站建设、H5场景定制商城网站开发、集团公司官网建设、外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为枣阳等各大城市提供网站开发制作服务。

UML类图中的关系

UML类图中的关系分为四种:泛化、依赖、关联、实现;关联关系又可以细化为聚合和组合。

1.泛化(Generalization)

UML类图中的泛化是父类和子类之间的关系,子类继承父类的所有结构和行为。在子类中可以增加新的结构和行为,也可以覆写父类的行为。

2.依赖(Dependency)

依赖关系是一种使用关系,特定事物的改变有可能会影响到使用该事物的事物,反之不成立。在你想显示一个事物使用另一个事物时使用。

通常情况下,依赖关系体现在某个类的方法使用另一个类作为参数。

如果模块A调用模块B提供的方法,或访问模块B中的某些数据成员(当然,在面向对象开发中一般不提倡这样做),我们就认为模块A依赖于模块B,模块A和模块B之间发生了耦合。

3.关联(Dependency)

关联是一种结构化的关系,指一种对象和另一种对象有联系。给定有关联的两个类,可以从一个类的对象得到另一个类的对象。UML类图中关联有两元关系和多元关系。两元关系是指一种一对一的关系,多元关系是一对多或多对一的关系。一般用实线连接有关联的同一个类或不同的两个类。当你想要表示结构化关系时使用关联。

关联关系是通过类的成员变量来实现的。

3.1聚合(Aggregation)

聚合是一种特殊的关联。它描述了“hasa”关系,表示整体对象拥有部分对象。

关联关系和聚合关系来语法上是没办法区分的,从语义上才能更好的区分两者的区别。聚合是较强的关联关系,强调的是整体与部分之间的关系。

与关联关系一样,聚合关系也是通过类的成员变量来实现的。

3.2组合(Composition)

组合是聚合的一种形式,它具有更强的拥有关系,强调整体与部分的生命周期是一致的。整体负责部分的生命周期的管理。如果整体被销毁,部分也必须跟着一起被销毁,如果所有者被复制,部分也必须一起被复制。

与关联关系一样,组合关系也是通过类的成员变量来实现的。

聚合和组合的区别在于:聚合关系是“has-a”关系,组合关系是“contains-a”关系;聚合关系表示整体与部分的关系比较弱,而组合比较强;聚合关系中代表部分事物的对象与代表聚合事物的对象的生存期无关,一旦删除了聚合对象不一定就删除了代表部分事物的对象。组合中一旦删除了组合对象,同时也就删除了代表部分事物的对象。

4.实现(Realization)

UML类图中第四种关系就是实现,实现关系指定两个实体之间的一个合约。换言之,一个实体定义一个合约,而另一个实体保证履行该合约。

类间关系有很多种,在大的类别上可以分为两种:纵向关系、横向关系。

纵向关系就是继承关系,它的概念非常明确,也成为OO的三个重要特征之一,这里不过多的讨论。

横向关系较为微妙,按照UML的建议大体上可以分为四种:

依赖(Dependency)

关联(Association)

聚合(Aggregation)

组合(Composition)

它们的强弱关系是没有异议的:依赖<关联<聚合<组合<泛化(继承)

在UML系统开发中有三个主要的模型:
功能模型:从用户的角度展示系统的功能,包括用例图。
对象模型:采用对象,属性,操作,关联等概念展示系统的结构和基础,包括UML类图。
动态模型:展现系统的内部行为。包括序列图,活动图,状态图。

【编辑推荐】

  1. 利用UML类图进行系统建模技巧详谈
  2. 使用UML类图进行Java应用程序设计
  3. UML用例图用法实例剖析
  4. 术语汇编 UML统一建模语言简介
  5. 利用UML类图设计Java应用程序详解

 

本文标题:UML类图中的四种关系深入剖析
当前路径:http://www.36103.cn/qtweb/news24/36574.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联