前言

在软件系统中,类不是孤立存在的,类与类之间存在相互关系,因此,需要通过 UML 来描述这些类之间的关系。

类之间具有如下几种关系:

  1. 关联关系
  2. 依赖关系
  3. 泛化关系
  4. 接口与实现关系

关联关系

含义:通常将一个类的对象作为另一个类的属性。

表示:在 UML 类图中,用 带箭头的实线 连接有关联的对象所对应的类。

在 UML 中,关联关系 有以下几种类型:

1)双向关联

2)单向关联

3)自关联

4)多重性关联

5)聚合关系

含义:表示一个整体与部分的关系。在聚合关系中,成员类是整体类的一部分,即成员对象是整体对象的一部分,但是成员对象可以脱离整体对象独立存在。

表示:在 UML 中,聚合关系用 带空心菱形的直线 表示。

6)组合关系

含义:也表示类之间整体和部分的关系。但是组合关系中部分和整体具有统一的生存期。一旦整体对象不存在,部分对象也将不存在,部分对象与整体对象之间具有 同生共死 的关系。在组合关系中,成员类是整体类的一部分,而且整体类可以控制成员类的生命周期,即成员类的存在依赖于整体类。

表示:在 UML 中,组合关系用 带实心菱形的直线 表示。

依赖关系

含义:在某个类的方法使用另一个类的对象作为参数

表示:在 UML 中,依赖关系用 带箭头的虚线 表示,由依赖的一方指向被依赖的一方。

泛化关系

含义:泛化关系也就是继承关系,泛化关系用于描述父类与子类之间的关系。父类又称作基类或超类,子类又称作派生类。

表示:在 UML 中,泛化关系用 带空心三角形的直线 来表示。

关键字:在 Java 语言中,使用 extends 关键字来实现。

接口与实现关系

含义: 在接口中,一般没有属性,而且所有的操作都是抽象的,只有操作的声明,没有操作的实现。接口和类之间存在一种实现关系,在这种关系中,类实现了接口,类中的操作实现了接口所有声明的操作。

表示:在 UML 中,类与接口之间的实现关系用 带空心三角形的虚线 来表示。

关键字:在 Java 语言中,使用 implements 关键字来实现。


摘自《设计模式》刘 伟 主编  P7

UML类图中类与类之间的关系相关推荐

  1. 类图中类与类之间的关系重点区分

    按照依赖强度排序: (强)实现 == 泛化 > 组合 > 聚合 > 关联 > 依赖(弱) 1.实现关系 是一种类与接口的关系,表示类是接口所有特征和行为的实现 侧重点:接口是抽 ...

  2. 浅谈UML类图中类之间的5种关系

    什么是UML类图? 类图显示了一组类.接口.协作以及他们之间的关系.在UML中问题域最终要被逐步转化,通过类来建模,通过编程语言构建这些类从而实现系统.类加上他们之间的关系就构成了类图,类图中还可以包 ...

  3. UML类图简介及类与类之间的关系

    UML(Unified Modeling Language,统一建模语言)建模是面向对象开发设计方法中的第一步,用UML来表达设计模式不仅方便了开发人员的交流,而且更加清晰.准确.UML定义了5类10 ...

  4. UML类图画法及类之间几种关系

    文章目录如下: 一.类图画法 二.类之间的几种关系:泛化(Generalization).实现(Realization).关联(Association)(又分一般关联.聚合(Aggregation). ...

  5. UML类图是描述类之间的关系

    UML类图是描述类之间的关系 概念 类(Class):使用三层矩形框表示. 第一层显示类的名称,如果是抽象类,则就用斜体显示. 第二层是字段和属性. 第三层是类的方法. 注意前面的符号,'+'表示pu ...

  6. 怎样用uml类图生成java类_JAVA:面向对象编程的底层逻辑,深度剖析

    什么是面向对象 在目前的软件开发领域有两种主流的开发方法,分别是结构化开发方法和面向对象开发方法.早期的编程语言如C.Basic.Pascal等都是结构化编程语言,随着软件开发技术的逐渐发展,人们发现 ...

  7. 【Java基础】UML类图及各种线代表的关系含义总结

    文章目录 一.UML常见图 1.类图(Class Diagram) 2.对象图(Object Diagram) 3.时序图(Sequence Diagram) 二.UML类图线的概括 1.类(Clas ...

  8. Java类的继承学生研究生类图_UML part3 类图、对象图

    UML part3 类图.对象图 四种关系 1. 依赖关系 ①定义:依赖描述了两个模型元素之间的关系,如果被依赖的模型元素发生变化就会影响到另一个模型元素 ②举例:动物有生命和水进行繁殖,动物和水,动 ...

  9. 类与类图,以及类间关系

    文章目录 前言 叙述 类与类图 如何表示 类图间关系 关联关系 1.双向关联 2.单项关联 3.自关联 4.多重关联 5.聚合关系 6.组合关系 依赖关系 泛化关系 接口与实现关系 前言 叙述 类与类 ...

最新文章

  1. python将txt转换为csv_Python Pandas 三行代码将 txt 文件转换成 csv 文件
  2. 写入缓存策略无法更改_【第1747期】webpack 5 之持久化缓存指南
  3. Android图形子系统
  4. 实习二 分组密码加密_分组密码加密模式
  5. c语言用于提示的指令,C语言指令、符号表.doc
  6. 安装centos linux7,安装centos7
  7. 图片居中裁剪_魔镜,魔镜,谁最美丽!利用PS图层混合模式打造图片幻觉效果
  8. mysql sum没法使用,mysql – 使用SUM()而不对结果进行分组
  9. 【CCF推荐专区】注意这些期刊提前截稿?计算机领域最快15天录用!
  10. 控制电机正反转的c语言程序,步进电机正反转控制C语言程序,只为初学者.docx
  11. 海伦公式c语言double,海伦公式
  12. VC6.0 快捷键整理
  13. 阿里云服务器ECS上部署简单的SSM项目
  14. 蜻蜓FM2014年校招笔试题目 - 规则二叉树
  15. Cadence学习七:给板子外形倒角
  16. 伯克利文理学院的计算机课程,2020年秋季加州大学伯克利分校文理学院学分项目选拔通知...
  17. 独家揭秘:美国网红的盈利模式
  18. Matlab-mex
  19. 线下空间体验如何承载商业策略——从宜家的冰淇淋说起
  20. 发送手机短信获取验证码功能

热门文章

  1. 今天没有写的,唱首歌吧。。
  2. javascript中 $和#符号的意思
  3. 串的查找和替换课程设计c语言,(串的查找和替换.doc
  4. 人工智能技术与物联网的融合
  5. 平克四部曲之《白板》
  6. 大学综评自招面试 计算机专业,沪9高校举行自招面试 高中学生综合素质纪实报告成重要参考...
  7. 交流电及整流滤波电路
  8. PLSQL Developer 登录报错 initialization error
  9. 金仓数据库 KingbaseES 与 Oracle 的兼容性说明(4. SQL)
  10. Python的format用法详解