在看一些技术博客的时候,经常会见到博客里画上很多uml图。因为经常会被这几种表达关系的箭头搞混,这里我就把常见的6种箭头表达的含义理一下。

泛化

概念:泛化是一种一般与特殊一般与具体之间关系的描述,具体描述建立在一般描述的基础之上,并对其进行了扩展。在java中用来表示继承的关系。

表示方法:用实线空心三角箭头表示。

实现

概念:实现是一种类与接口的关系,表示类是接口所有特征和行为的实现,在程序中一般通过类实现接口来描述

表示方法:空心三角形箭头的虚线,实现类指向接口

依赖

概念:是一种使用的关系,即一个类的实现需要另一个类的协助。

java中,方法参数需要传入另一个类的对象,就表示依赖这个类。

表示方法:虚线箭头,类A指向类B。

关联

概念:表示类与类之间的联接,它使一个类知道另一个类的属性和方法,这种关系比依赖更强、不存在依赖关系的偶然性、关系也不是临时性的,一般是长期性的。

java中一个类的全局变量引用了另一个类,就表示关联了这个类

表示方法:实线箭头,类A指向类B

聚合

概念:聚合关联关系的一种特例,是强的关联关系。聚合是整体和个体之间的关系,即has-a的关系,整体与个体可以具有各自的生命周期,部分可以属于多个整体对象,也可以为多个整体对象共享。程序中聚合和关联关系是一致的,只能从语义级别来区分;

表示方法:尾部为空心菱形的实线箭头(也可以没箭头),类A指向类B

组合

概念:组合也是关联关系的一种特例。组合是一种整体与部分的关系,即contains-a的关系,比聚合更强。部分与整体的生命周期一致,整体的生命周期结束也就意味着部分的生命周期结束,组合关系不能共享。程序中组合和关联关系是一致的,只能从语义级别来区分。

表示方法:尾部为实心菱形的实现箭头(也可以没箭头),类A指向类B

uml图六种箭头的含义相关推荐

  1. 【实用工具】UML图六种箭头的含义

    文章参考资源,安利一波: W3Cschool UML教程 UML各种图总结-精华 uml图六种箭头的含义 UML类图中箭头和线条的含义和用法 各种关系的强弱顺序: 泛化 = 实现 > 组合 &g ...

  2. uml图六种箭头的含义(泛化、实现、依赖、关联、聚合、组合)

    泛化 概念:泛化是一种一般与特殊.一般与具体之间关系的描述,具体描述建立在一般描述的基础之上,并对其进行了扩展.在java中用来表示继承的关系. 表示方法:用实线空心三角箭头表示. 实现 概念:实现是 ...

  3. UML图六种箭头含义

    导语 在平时的开发中,难免会遇到画UML图的时候,也就是我们所说的类图,但是UML图中的箭头多种多样,所代表的含义也是各不相同,今天我们就来说说这几种箭头所代表的含义. 1 泛化 概念:泛化表示一个更 ...

  4. UML六种箭头代表含义

    UML六种箭头代表含义 1. 泛化 1.1. **概念:** 1.2. **表示方法:**用实线空心三角箭头表示. 2. 实现 2.1. **概念:** 2.2. **表示方法:**空心三角形箭头的虚 ...

  5. UML六种箭头的含义

    每次都是懒,然后查到别人的描述.我感觉在我的脑子里印象不深刻.还是要自己写一篇. 不同的箭头,代表着不同类之前的关系. 被箭头指的类都是父类,基类,类A使用类B的类A. 六种如下:(组聚泛实关依)-- ...

  6. UML图中6种箭头的含义

    在看一些技术博客的时候,经常会见到博客里画上很多uml图.因为经常会被这几种表达关系的箭头搞混,这里我就把常见的6种箭头表达的含义理一下. 泛化 概念:泛化是一种一般与特殊.一般与具体之间关系的描述, ...

  7. uml图中的各种箭头_设计模式学习笔记(二):UML与面向对象设计原则

    1 UML 1.1 UML UML(Unified Modeling Language)是统一建模语言,1997年11月UML1.1版本提交给OMG并正式通过,成为建模语言的个那个也标准.2003年6 ...

  8. 软件工程UML图的学习(各种关系及线箭头疑点解析)

    原文链接 这里不会将UML的各种元素都提到,我只想讲讲类图中各个类之间的关系: 能看懂类图中各个类之间的线条.箭头代表什么意思后,也就足够应对 日常的工作和交流: 同时,我们应该能将类图所表达的含义和 ...

  9. UML类图中符号的含义

    UML类图中符号的含义 类图中的基本符号由虚线.箭头.实线.空心三角形.空心菱形.实心菱形组成,这些符号的组合构成类图的基本符号 实线+箭头 表示关联关系 关联关系分类 自身关联 表示自身拥有一个自身 ...

最新文章

  1. java 画笔粗细_用JAVA做个画笔,有画笔和橡皮功能就行。越简单越好
  2. 一步一步学Ruby(七):数学表达式
  3. 主成分分析(PCA)——以2维图像为例
  4. 小米air耳机重新配对_小米发布 399 元真无线蓝牙耳机,除了小爱同学还支持其他手机语音助手...
  5. mysql 创建用户权限_10.创建 MySQL 用户及赋予用户权限
  6. 微软已暂时停用你的帐户_Apple ID 被停用如何解决?
  7. 我用AI回怼美女汽车销售系列[yolo车牌识别](二)
  8. VB中KeyCode常数用法 VB 按键
  9. Latex可能遇到的一些问题
  10. CSS3黑色大气绘图着陆页模板
  11. turtle fillcolor_python3的turtle画模仿3d星空、运动的恒星小宇宙
  12. Scheme调试手册(四)
  13. oracle中聚合比较函数,Oracle 分析函数与聚合函数区别
  14. 目标检测综述 “Object Detection in 20 Years: A survey“
  15. Zabbix 2.2 安装图解教程
  16. 前端推荐的书籍学习(必看)
  17. Trivy是CD流水线上面向容器的脆弱性扫描器
  18. Whole Word Masking (wwm)
  19. 使用Swift模拟Window-LFU
  20. 在vc2008中用_crtBreakAlloc调试内存泄漏

热门文章

  1. 学计算机二手笔记本,二手笔记本中的套路 坑你就跟玩一样
  2. 如何辨识“真假”敏捷?
  3. python: python环境搭建
  4. 1.2 Python环境搭建
  5. 水仙花数的while方法
  6. oppo a36参数配置
  7. 深入理解TCP协议的连接状态与可靠机制
  8. 腾达ap设置说明_机身更小巧,AP免配置,腾达全千兆PoEAC一体化路由G05GPoE来了...
  9. pandas:世界各国GDP数据集数据清洗案例
  10. Merriam-Webster's Vocabulary Builder 学习笔记 Unit 18