参考自微笑刺客D:UML图例之类图.

泛化


泛化关系:设计上用空心箭头实线表示。
泛化的代码体现是继承父类。说明二者的关系是继承。

实现


实现关系:设计上用实心箭头虚线表示。
在代码中体现在接口和实现关系。

关联

关联关系:在代码中体现为类对象的单向访问(单向 关联) 和相互访问(双向关联)

1、单向关联:学生可以拥有书籍,学生知道书籍的存在,但是书籍无需知道学生的存在,学生可以拥有多本书籍,因此从学生指向书籍关联。设计上用箭头实线表示。

2、双向关联:学生知道老师的存在,老师知道学生的存在。设计上用实线表示。

关联关系常用于数据库表的设计,与数据库范式相对应。

聚合


聚合关系:特殊的关联关系,体现整体和部分的关系,设计上用空心菱形实线箭头表示。
部门不存在,员工仍然可以存在,员工离职,部门仍然存在。体现的是0和n,整体和部分,整体不存在,部分仍然可以存在。
代码的体现形式之一可以是员工类是部门类的一个属性。
或者说当A◇一>B , 代码体现是B是A的一个字段。

组合


组合关系:特殊的关联关系,和聚合关系类似,体现整体与部分关系,设计上用实心菱形实现箭头表示。
  公司和部门关系体现在公司不存在,则部门也不存在了,前者掌握整体的生命周期。体现在0和0、1和n,整体不存在,则部分不存在,整体存在,则部分存在。

依赖


依赖关系:没有直接的关系,仅仅在代码运行期间,产生的依赖,如将A类中间的时间属性赋值到B类中的时间属性。A类中调用类中类型为B类的属性,A类中调用的方法,需要用到B类的信息等。设计上用箭头虚线表示。箭头指向方为被调用方。

【UML】 类图 图例相关推荐

  1. 一张图 学会UML类图图例

  2. 身为程序员还看不懂UML类图? 一文带你零基础学会看UML类图!

    身为程序员还看不懂UML类图? 一文带你零基础学会看UML类图! 一,UML类图示例图 二,UML类图图例 三,分步解析说明 3.1 类图: 3.2 接口: 3.3 实现继承 3.4 实现接口: 3. ...

  3. 区分 UML 类图中的几种关系

    区分 UML 类图中的几种关系   2010-12-23 作者:fnw 来源:网络      区分 UML 类图中的几种关系  UML 类图中的 "关联关系(association) &qu ...

  4. 四步轻松实现用Visio画UML类图

    原文链接:四步轻松实现用Visio画UML类图 四步轻松实现用Visio画UML类图 本节和大家一起学习一下用Visio画UML类图的方法,主要有四个步骤,这里和大家分享一下,相信通过本节的学习,你对 ...

  5. Visio画UML类图

    用Visio画UML类图 1.首先创建一个类图.接下来我们要做一下准备工作,因为我们这里用了PSDK中的POINT类型,在种数据类型在visio数据类型中找不到,所以我们先得追加这个数据类型.为了便于 ...

  6. 最全Pycharm教程(43)——Pycharm扩展功能之UML类图使用 代码结构

    版权声明:本文为博主原创文章,转载时麻烦注明源文章链接,谢谢合作 https://blog.csdn.net/u013088062/article/details/50353202 1.什么是UML ...

  7. idea添加database插件_IDEA高级玩法:集成JIRA、UML类图插件、SSH、FTP、Database管理......

    优质文章,第一时间送达 上一篇: 下一篇:(已修复) 作者: 菩提树下的杨过 出处: http://yjmyzz.cnblogs.com dea还有很多高大上的功能,易用性几乎能与vs.net媲美,反 ...

  8. UML类图新手入门级介绍

    UML类图新手入门级介绍 看了大话设计模式,觉得很生动形象,比较适合于我这种初学者理解面向对象,所以就记录了一下. 举一个简单的例子,来看这样一副图,其中就包括了UML类图中的基本图示法. 首先,看动 ...

  9. 从零开始单排学设计模式「UML类图」定级赛

    阅读本文大概需要 3.5 分钟. 本篇是设计模式系列的开篇,虽然之前也写过相应的文章,但是因为种种原因后来断掉了,而且发现之前写的内容也很渣,不够系统. 所以现在打算重写,加上距离现在也有一段时间了, ...

  10. IDEA高级用法:集成JIRA、UML类图插件、SSH、FTP、Database管理...

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 作者:菩提树下的杨过   出处:http://yjmyzz.cnb ...

最新文章

  1. Go 学习笔记(10)— 数组定义、数组声明、数组初始化、访问数组、数组相等、向函数传递数组
  2. Visual C# .NET 2003 语言的改变
  3. C# MVC中返回JSON 对象
  4. Android入门之TabHost,TabWidget
  5. python错误-Python错误和异常(error)处理技巧
  6. php 常用的知识点归集(下)
  7. python语言例子_【Python】SimPy的使用示例-Go语言中文社区
  8. 动态规划(DP)——通俗易懂!
  9. 如何对 Kubernetes 进行扩展
  10. Java Lambda 表达式快速学习
  11. 配置 HTTP 与 DNS 功能
  12. 评价一个推荐系统的指标详解!
  13. Linux EXPORT_SYMBOL宏详解
  14. GNSS原理及技术(一)——GNSS现状与发展
  15. 简单描述进程 vs 线程
  16. 有什么软件可以自动把PDF文件翻译成英文的吗?
  17. MiniGUI原理分析GAL
  18. in_array 二维数组
  19. SuperMap 点云的使用
  20. 文件在线预览doc,docx转换pdf(一)

热门文章

  1. 手把手实操|深度剖析电商贷款风控相关细节(电商贷模型)
  2. 1.24 为应用程序添加图标 [原创iOS开发-Xcode教程]
  3. 计算机毕业设计(73)php小程序毕设作品之美食菜谱小程序系统
  4. python中值_Python中值,python,中位数
  5. oracle认证大师时间,oracle认证考试时间在什么时候
  6. 名片拍照识别接口文档
  7. 操作系统、乱码、驱动、键盘失灵、win7
  8. 苹果手机无法解析html,【小程序】wxParse无法解析html
  9. 详解Java中静态方法
  10. 实现中文分词、词性标注、关键词提取、句法分析等智能预处理