进行系统设计时,UML是一种常见的面向对象结构设计方式,里面的各种箭头表示经常会把人弄糊涂,如果不能正确理解,实现阶段就会出大问题,失之毫厘,谬以千里,下面带着大家认识下6种常用箭头。

1. 泛化

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

2. 实现

概念:实现是一种类与接口的关系,表示类是接口所有特征和行为的实现,在程序中一般通过类实现接口来描述
表示方法:空心三角形箭头的虚线,实现类指向接口,如下:

3. 依赖

概念:是一种使用的关系,即一个类的实现需要另一个类的协助。如方法参数需要传入另一个类的对象,就表示依赖这个类。

表示方法:虚线箭头,类A指向类B,即A依赖B,如下图:

4.关联

概念:表示类与类之间的联接,它使一个类知道另一个类的属性和方法,这种关系比依赖更强、不存在依赖关系的偶然性、关系也不是临时性的,一般是长期性的。程序中一个类的全局变量引用了另一个类,就表示关联了这个类,关联关系分为单项关联和双向关联。在Java中,单向关联表现为:类A当中使用了类B,其中B作为类A的成员变量。双向关联表现为:类A当中使用了类B作为成员变量;同时类B中也使用了类A作为成员变量。
表示方法:实线箭头,类A指向类B,即A关联B,如下图,消费者种关联了若干产品:

5.聚合

概念:聚合关联关系的一种特例,是强的关联关系。聚合是“整体-个体”之间的关系,即has-a的关系,整体与个体可以具有各自的生命周期,部分可以属于多个整体对象,也可以为多个整体对象共享。程序中聚合和关联关系是一致的,只能从语义级别来区分。
表示方法:尾部为空心菱形的实线箭头(也可以没箭头),车轮和大灯都属于汽车,如下图:

6.组合

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

表示方法:尾部为实心菱形的实现箭头(也可以没箭头)

UML-认识六种箭头,轻松读懂UML图相关推荐

  1. 快速读懂UML类图,搞懂类之间的6大关系,轻松绘制UML类图

    快速读懂UML类图,搞懂类之间的6大关系,轻松绘制UML类图 前言 一.UML类图简介 二.类之间的六大关系及UML类图 1.依赖关系及UML类图表示 2.泛化关系及UML类图表示 3.实现关系及UM ...

  2. 大疆aeb连拍_一张图带你轻松读懂摄影必备专业术语~

    原标题:一张图带你轻松读懂摄影必备专业术语~ 曝光,只是画面光线的明暗程度而已?自动对焦,只用手指一点就万试万灵?AEB连拍和HDR拍摄又有什么区别? 快门.光圈,焦距--搞懂了这些术语,就能拍出一幅 ...

  3. mysql火焰图_如何读懂火焰图?

    原标题:如何读懂火焰图? 文章作者:阮一峰http://www.ruanyifeng.com/原文链接:http://www.ruanyifeng.com/blog/2017/09/flame-gra ...

  4. 五分钟读懂UML类图

    平时阅读一些远吗分析类文章或是设计应用架构时没少与UML类图打交道.实际上,UML类图中最常用到的元素五分钟就能掌握,下面赶紧来一起认识一下它吧: 一.类的属性的表示方式 在UML类图中,类使用包含类 ...

  5. 五分钟读懂UML类图(转)

    平时阅读一些远吗分析类文章或是设计应用架构时没少与UML类图打交道.实际上,UML类图中最常用到的元素五分钟就能掌握,下面赶紧来一起认识一下它吧: 一.类的属性的表示方式 在UML类图中,类使用包含类 ...

  6. 5分钟读懂UML类图

    平时阅读一些远吗分析类文章或是设计应用架构时没少与UML类图打交道.实际上,UML类图中最常用到的元素五分钟就能掌握,下面赶紧来一起认识一下它吧: 一.类的属性的表示方式 在UML类图中,类使用包含类 ...

  7. 五步读书法,轻松读懂一本书,系统性的了解一个新领域

    题图:电子阅读,来源:pixabay 引子 这两年读书还算比较多,而且很多书是关于数字化转型.产业互联网.中国近现代史.计算机和软件史.科技史等等,不是熟悉的技术领域的,和以往的读书经历就有所不同.以 ...

  8. 问题杂谈:教你读懂UML图

    UML图可以说是每个编程人员必须知道的知识,关于UML了相关知识可以专门开设课程进行学习,知识体系在软件工程中很重要,特别是设计到专业的团队开发时,这些东西显得尤为重要.我在这里只是介绍UML图中的基 ...

  9. uml类图例子_五分钟带你读懂UML类图

    目录 先看下面这张类图,包括了UML类图的基本图示法 1.类的表示 2.接口的表示 3.继承关系 4.实现接口 5.关联关系 6.聚合关系 7.合成(组合)关系 8.依赖关系 先看下面这张类图,包括了 ...

最新文章

  1. 如何在您HTML中嵌入视频和音频
  2. linux 文件查找及定位
  3. Hadoop 单机版和伪分布式版安装
  4. 教你用Python提取Chrome浏览器保存的密码
  5. 原型模式——创建型模式
  6. 华为M2平板打不开云课堂_能运行PC应用的安卓生产力平板:华为MatePad Pro 5G登场...
  7. python3.6安装dlib,一直不成功的解决办法
  8. 比较有名的CSS,优雅地写css
  9. 设计模式(六)建造者(创建型)
  10. excel使用教程_如何系统地学习Excel?
  11. matlab面源模式反扩散参数研究,基于GIS的大气点源污染高斯烟羽扩散模拟研究
  12. eclipse卸载插件
  13. 计算机是uefi启动 不能装win7,如何查看电脑是不是uefi启动|查看win7系统主板是否支持UEFI模式的方法...
  14. 螳螂科技产研分享:做有生命力的SaaS产品架构
  15. 读书笔记 - 《六神磊磊读唐诗》
  16. TortoiseSVN服务器端下载及使用方法
  17. LeetCode 831. Masking Personal Information【字符串,正则表达式】中等
  18. MySQL 日期字符串转换
  19. Linux服务器上使用nginx搭建mp4、flv流媒体服务器
  20. 使用wro4j和maven在编译期间压缩js和css文件

热门文章

  1. 在 iPad和 iPhone的浏览器上查看网页源代码
  2. 自动安装JDK、HADOOP、ZOOKEEPER、HIVE的shell脚本
  3. 前端手把手教你js实现附件预览和下载得功能实现
  4. 不可随便给一个人说晚安『你知道它的真正意义吗?不想以后后悔就进来看看吧』
  5. 用python代码实现 函数调用 烤红薯的例子
  6. 服务器上的服务一直自动关闭,关于服务器老是自动关闭
  7. 如何实现年会主分会场视频直播?
  8. canvas二次、三次贝赛尔曲线 绘制气泡圆角矩形立体桃心
  9. Navicat报错:2003 - Can‘t connect to MySQL server on ‘xxx‘ (10060 “Unknown error“)
  10. Cadence Allegro 板框倒角设置方法