【UML】 类图 图例
参考自微笑刺客D:UML图例之类图.
泛化
泛化关系:设计上用空心箭头实线表示。
泛化的代码体现是继承父类。说明二者的关系是继承。
实现
实现关系:设计上用实心箭头虚线表示。
在代码中体现在接口和实现关系。
关联
关联关系:在代码中体现为类对象的单向访问(单向 关联) 和相互访问(双向关联)
1、单向关联:学生可以拥有书籍,学生知道书籍的存在,但是书籍无需知道学生的存在,学生可以拥有多本书籍,因此从学生指向书籍关联。设计上用箭头实线表示。
2、双向关联:学生知道老师的存在,老师知道学生的存在。设计上用实线表示。
关联关系常用于数据库表的设计,与数据库范式相对应。
聚合
聚合关系:特殊的关联关系,体现整体和部分的关系,设计上用空心菱形实线箭头表示。
部门不存在,员工仍然可以存在,员工离职,部门仍然存在。体现的是0和n,整体和部分,整体不存在,部分仍然可以存在。
代码的体现形式之一可以是员工类是部门类的一个属性。
或者说当A◇一>B , 代码体现是B是A的一个字段。
组合
组合关系:特殊的关联关系,和聚合关系类似,体现整体与部分关系,设计上用实心菱形实现箭头表示。
公司和部门关系体现在公司不存在,则部门也不存在了,前者掌握整体的生命周期。体现在0和0、1和n,整体不存在,则部分不存在,整体存在,则部分存在。
依赖
依赖关系:没有直接的关系,仅仅在代码运行期间,产生的依赖,如将A类中间的时间属性赋值到B类中的时间属性。A类中调用类中类型为B类的属性,A类中调用的方法,需要用到B类的信息等。设计上用箭头虚线表示。箭头指向方为被调用方。
【UML】 类图 图例相关推荐
- 一张图 学会UML类图图例
- 身为程序员还看不懂UML类图? 一文带你零基础学会看UML类图!
身为程序员还看不懂UML类图? 一文带你零基础学会看UML类图! 一,UML类图示例图 二,UML类图图例 三,分步解析说明 3.1 类图: 3.2 接口: 3.3 实现继承 3.4 实现接口: 3. ...
- 区分 UML 类图中的几种关系
区分 UML 类图中的几种关系 2010-12-23 作者:fnw 来源:网络 区分 UML 类图中的几种关系 UML 类图中的 "关联关系(association) &qu ...
- 四步轻松实现用Visio画UML类图
原文链接:四步轻松实现用Visio画UML类图 四步轻松实现用Visio画UML类图 本节和大家一起学习一下用Visio画UML类图的方法,主要有四个步骤,这里和大家分享一下,相信通过本节的学习,你对 ...
- Visio画UML类图
用Visio画UML类图 1.首先创建一个类图.接下来我们要做一下准备工作,因为我们这里用了PSDK中的POINT类型,在种数据类型在visio数据类型中找不到,所以我们先得追加这个数据类型.为了便于 ...
- 最全Pycharm教程(43)——Pycharm扩展功能之UML类图使用 代码结构
版权声明:本文为博主原创文章,转载时麻烦注明源文章链接,谢谢合作 https://blog.csdn.net/u013088062/article/details/50353202 1.什么是UML ...
- idea添加database插件_IDEA高级玩法:集成JIRA、UML类图插件、SSH、FTP、Database管理......
优质文章,第一时间送达 上一篇: 下一篇:(已修复) 作者: 菩提树下的杨过 出处: http://yjmyzz.cnblogs.com dea还有很多高大上的功能,易用性几乎能与vs.net媲美,反 ...
- UML类图新手入门级介绍
UML类图新手入门级介绍 看了大话设计模式,觉得很生动形象,比较适合于我这种初学者理解面向对象,所以就记录了一下. 举一个简单的例子,来看这样一副图,其中就包括了UML类图中的基本图示法. 首先,看动 ...
- 从零开始单排学设计模式「UML类图」定级赛
阅读本文大概需要 3.5 分钟. 本篇是设计模式系列的开篇,虽然之前也写过相应的文章,但是因为种种原因后来断掉了,而且发现之前写的内容也很渣,不够系统. 所以现在打算重写,加上距离现在也有一段时间了, ...
- IDEA高级用法:集成JIRA、UML类图插件、SSH、FTP、Database管理...
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 作者:菩提树下的杨过 出处:http://yjmyzz.cnb ...
最新文章
- Go 学习笔记(10)— 数组定义、数组声明、数组初始化、访问数组、数组相等、向函数传递数组
- Visual C# .NET 2003 语言的改变
- C# MVC中返回JSON 对象
- Android入门之TabHost,TabWidget
- python错误-Python错误和异常(error)处理技巧
- php 常用的知识点归集(下)
- python语言例子_【Python】SimPy的使用示例-Go语言中文社区
- 动态规划(DP)——通俗易懂!
- 如何对 Kubernetes 进行扩展
- Java Lambda 表达式快速学习
- 配置 HTTP 与 DNS 功能
- 评价一个推荐系统的指标详解!
- Linux EXPORT_SYMBOL宏详解
- GNSS原理及技术(一)——GNSS现状与发展
- 简单描述进程 vs 线程
- 有什么软件可以自动把PDF文件翻译成英文的吗?
- MiniGUI原理分析GAL
- in_array 二维数组
- SuperMap 点云的使用
- 文件在线预览doc,docx转换pdf(一)
热门文章
- 手把手实操|深度剖析电商贷款风控相关细节(电商贷模型)
- 1.24 为应用程序添加图标 [原创iOS开发-Xcode教程]
- 计算机毕业设计(73)php小程序毕设作品之美食菜谱小程序系统
- python中值_Python中值,python,中位数
- oracle认证大师时间,oracle认证考试时间在什么时候
- 名片拍照识别接口文档
- 操作系统、乱码、驱动、键盘失灵、win7
- 苹果手机无法解析html,【小程序】wxParse无法解析html
- 详解Java中静态方法
- 实现中文分词、词性标注、关键词提取、句法分析等智能预处理