`
无名哥
  • 浏览: 6474 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

UML 几种关系图的总结

    博客分类:
  • UML
阅读更多

  在UML类图中,常见的有以下几种关系:

      泛化(Generalization)

      实现(Realization)

      关联(Association)

      聚合(Aggregation)

      组合(Composition)

      依赖(Dependency)

1. 泛化(Generalization

【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为。例如:老虎是动物的一种,即有老虎的特性也有动物的共性。

【箭头指向】:带三角箭头的实线,箭头指向父类

UML类图几种关系的总结

2. 实现(Realization

【实现关系】:是一种类与接口的关系,表示类是接口所有特征和行为的实现.

【箭头指向】:带三角箭头的虚线,箭头指向接口

UML类图几种关系的总结

3. 关联(Association)

【关联关系】:是一种拥有的关系,它使一个类知道另一个类的属性和方法;如:老师与学生,丈夫与妻子关联可以是双向的,也可以是单向的。双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头。

【代码体现】:成员变量

【箭头及指向】:带普通箭头的实心线,指向被拥有者

UML类图几种关系的总结

上图中,老师与学生是双向关联,老师有多名学生,学生也可能有多名老师。但学生与某课程间的关系为单向关联,一名学生可能要上多门课程,课程是个抽象的东西他不拥有学生。

下图为自身关联:

UML类图几种关系的总结

4. 聚合(Aggregation

【聚合关系】:是整体与部分的关系,且部分可以离开整体而单独存在。如车和轮胎是整体和部分的关系,轮胎离开车仍然可以存在。

聚合关系是关联关系的一种,是强的关联关系;关联和聚合在语法上无法区分,必须考察具体的逻辑关系。

【代码体现】:成员变量

【箭头及指向】:带空心菱形的实心线,菱形指向整体

UML类图几种关系的总结

5.组合(Composition)

【组合关系】:是整体与部分的关系,但部分不能离开整体而单独存在。如公司和部门是整体和部分的关系,没有公司就不存在部门。

组合关系是关联关系的一种,是比聚合关系还要强的关系,它要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期。

【代码体现】:成员变量

【箭头及指向】:带实心菱形的实线,菱形指向整体

UML类图几种关系的总结

6. 依赖(Dependency)

【依赖关系】:是一种使用的关系,即一个类的实现需要另一个类的协助,所以要尽量不使用双向的互相依赖.

【代码表现】:局部变量、方法的参数或者对静态方法的调用

【箭头及指向】:带箭头的虚线,指向被使用者

UML类图几种关系的总结

各种关系的强弱顺序:

泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖

下面这张UML图,比较形象地展示了各种类图关系:

UML类图几种关系的总结

分享到:
评论

相关推荐

    UML类图几种关系的总结

    UML(Unified Modeling Language,统一建模...通过对以上六种关系的深入理解,我们不仅能更好地利用UML类图来描述系统的静态结构,还能在实际开发过程中更准确地定义类之间的交互关系,从而提高软件开发的效率和质量。

    UML类图几种关系的总结 - OPEN 开发经验库

    在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖

    UML.rar_UML图_uml _关系图

    总结来说,UML图和关系图在VOS开发中扮演着核心角色,它们是软件设计的重要工具,能够帮助开发者构建清晰、准确的系统模型,从而提升开发效率和软件质量。理解和熟练运用UML,是每一个IT从业者必备的技能之一。

    UML 九种视图总结

    UML 中定义了几种不同类型的关系,包括泛化、依赖、关联、实现等,这些关系帮助我们理解和描述系统中的类和对象如何相互作用。 #### 二、UML 类图中的关系 ##### 2.1 泛化 (Generalization) - **定义**:泛化是...

    uml学习总结-类图、序列图

    - **类之间的关系**:类图中表示了几种重要的关系,包括: - **接口**:表示一个类实现了特定的接口,通过空心圆形加直线来表示。 - **依赖**:表示一个类依赖于另一个类的功能或信息,使用虚线加箭头来表示。 - ...

    学生管理系统UML图

    在学生管理系统中,主要会用到以下几种UML图: 1. **用例图(Use Case Diagram)**:描绘了系统的外部行为,即系统如何与用户或其他系统进行交互。在这个学生管理系统中,可能会包含"注册学生"、"查询成绩"、"修改...

    UML类图关系大全

    本文将详细介绍UML类图中的几种主要关系类型:关联、聚合/组合以及依赖,并通过具体的实例和代码示例来帮助读者更好地理解这些概念。 #### 二、关联 关联是UML中最基本的关系类型之一,用于描述两个类之间的连接。...

    斗地主 游戏UML图及java代码

    在斗地主游戏中,主要涉及以下几种UML图: 1. 类图(Class Diagram):用于描述游戏中的类、接口以及它们之间的关系,如玩家、牌、游戏规则等。 2. 用例图(Use Case Diagram):展现玩家与游戏的交互,比如发牌、...

    UML:类图关系总结

    UML类图几种关系的总结,泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖 在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition...

    网上考试系统 用例uml图

    总结而言,网上考试系统的用例UML图是系统设计的关键组成部分,它清晰地展现了系统各功能之间的关系和交互,有助于理解和实现系统的各项需求。通过深入理解和应用这些图表,可以有效地设计、开发并优化网上考试系统...

    UML教程 UML的一切知识都在这里.zip

    "UML的一切知识都在这里"和"UML常用图的几种关系的总结.doc"则提供了更深入的理论和实践指导,帮助你全面掌握UML的各个知识点。通过这些资料,你将能够熟练运用UML进行系统建模,从而更好地规划、设计和实现软件项目...

    图书馆管理系统uml

    我们可以使用UML的用例图、实体关系图(ER图)或对象图来描绘数据模型。例如,数据库中可能有“书籍”、“用户”、“借阅记录”等表,它们之间的关系需要清晰地表示出来。 最后,代码设计建模阶段,UML序列图和协作...

    UML论文(各种图-用例,协作,顺序等)-

    总结,UML在远程教育数据库系统中的应用是多方面的,它通过用例图、协作图和顺序图等工具,提高了系统设计的清晰度和易理解性,同时也促进了团队间的有效沟通。通过模块化设计和遵循软件工程的最佳实践,我们可以...

    网上书店 用例图 活动图 类图 UML

    在这个网上书店系统中,我们主要关注的是三种UML图表:用例图、活动图和类图。这些图表帮助我们理解和设计系统的不同方面。 首先,**用例图**(Use Case Diagram)是用来描述系统参与者(Actors)与系统(System)...

    ThreadPool UML图

    线程池是一种重要的并发设计模式,其UML图可以直观地展示其内部的类和对象之间的关系,从而帮助我们更好地理解线程池的工作原理。在本篇内容中,我们将根据标题“ThreadPool UML图”和描述“线程池的架构UML图。可以...

    学生选课系统(UML).pdf

    学生选课系统的UML设计不仅仅局限于上述几种图表,还包括其他的图表类型。例如,构件图可以展示系统的逻辑架构,复合结构图可以展现系统中复杂的类或组件的内部结构。 在实际的设计过程中,不同的UML图可以为不同...

    UML2.0新特性介绍

    本文将重点介绍UML2.0中的几个核心新特性,包括活动图、类图、通信图和用例图等方面的重要变化。 #### 二、活动图新特性 活动图(Activity Diagram)是UML中用于描述系统动态行为的一种图形化工具,主要用于展示业务...

Global site tag (gtag.js) - Google Analytics