UML类图介绍&类的六大关系
UML类图介绍&类的六大关系
官方定义
UML(统一建模语言),是一种用于软件系统分析和设计的语言工具,用于帮助软件开发人员进行思考和记录思路的方式
UML 图形化的语言
基本介绍

UML图:通过不同的图形和符号,来描述软件模型以及各个元素之间的关系
UML图分类
- 用例图(use case)
- 静态结构图:类图、对象图、包图、组件图、部署图
- 动态行为图:交互图(时序图与协作图)、状态图、活动图
UML类图:描述类之间的关系
建模工具
- word,利用word工具就可以绘制简单的UML图,但是这是一种非专业的手段,而且绘制起来比较麻烦
- 利用VISIO工具进行UML图的绘制
- 利用PowerDesigner工具绘制UML图形,PowerDesigner支持标准数据建模UML
- 利用Eclipse中的AmaterasUML插件,也可以进行UML的绘制
- IDEA中可以使用PlantUML插件来画类图,也可以下载安装UMLSopport插件绘制图
依赖关系
是一种使用关系,一个类的实现,需要另一个类的协助,逻辑上use a表示
只要在类中使用到了对方,就是依赖关系,是一种最基本的关系
其它五种关系,都是依赖关系的特例
UML图示
UML符号:一条虚线加箭头的形式
泛化关系
泛化关系指的就是继承关系
UML图示
UML符号:一条实线加上三角箭头,箭头的要指向父类
实现关系
实现关系,A类实现了B接口,A,B存在实现关系
UML图示
UML符号:一条虚线加三角箭头,箭头方向要指向接口
关联关系
关联关系体现的是业务逻辑上的关系
关联关系具有导航性:单项关联,双向关联
关联关系还具有多重性:一对一,一对多,多对多
UML图示
UML符号:
- 单项关联
- 一条实线加一个箭头
- 双向关联
- 一条实线(一条实线加两个箭头)
聚合关系
聚合关系,是关联关系的一个特例
具有导航性,具有多重性
聚合关系描述的是业务逻辑上整体和部分的关系,整体和部分如果可以分开,就是构成聚合
UML图示
UML符号:一条实线加上空心菱形来表示聚合关系
组合关系
组合关系整体和部分的关系,整体和部分是不能分开的
UML图示
UML符号:一条实线加实心菱形来表示组合关系
UML类图介绍&类的六大关系的更多相关文章
- UML(一) 类图及类间关系
原创文章,同步发自作者个人博客,http://www.jasongj.com/uml/class_diagram/ UML类图 UML类图介绍 在UML 2.*的13种图形中,类图是使用频率最高的UM ...
- 3.UML中的类图及类图之间的关系
统一建模语言简介 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标 ...
- GOF 的23种JAVA常用设计模式总结 02 UML中的类图与类图之间的关系
统一建模语言UML 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际 ...
- UML中的类图及类图之间的关系
统一建模语言简介 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标 ...
- 北风设计模式课程---20、UML类图介绍
北风设计模式课程---20.UML类图介绍 一.总结 一句话总结: 不仅要通过视频学,还要看别的博客里面的介绍,搜讲解,搜作用,搜实例 设计模式都是对生活的抽象,比如用户获得装备,我可以先装备工厂先生 ...
- UML 类图介绍
UML 类图介绍 一. UML 简介 UML ( Unified Modeling Language )即统一建模语言,是 OMG ( Object Management Group )发表的图标式软 ...
- 【转】UML类图与类的关系详解
UML类图与类的关系详解 2011-04-21 来源:网络 在画类图的时候,理清类和类之间的关系是重点.类的关系有泛化(Generalization).实现(Realization).依赖(D ...
- UML类图与类的关系详解
摘自:http://www.uml.org.cn/oobject/201104212.asp UML类图与类的关系详解 2011-04-21 来源:网络 在画类图的时候,理清类和类之间的关系是重点.类 ...
- UML类图与类间六种关系表示
UML类图与类间六种关系表示 1.类与类图 类封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性,操作,关系的对象集合的总称. 类图是使用频率最高的UML图之一. 类图用于描述系统中所包含的 ...
随机推荐
- CentOS 安装TFTP
1.当然是使用yum安装最直接,一共会安装3个东东tftp.i386tftp-server.i386xinetd.i386[root@localhost CentOS]# yum -y install ...
- jqXHR.fail()回调方法及其参数详细说明
jqXHR.fail()是一个可供选择的 error 回调选项的构造函数,.fail()方法取代了的过时的.error()方法.从 jQuery 1.5 开始,$.ajax()返回的jqXHR对象 实 ...
- Java基础进阶
Java基础进阶J Object类 hashcode() toString() clone() getClass() notify() wait() equals() Random类 生成 随机数 U ...
- 2019牛客暑期多校训练营(第三场) F.Planting Trees(单调队列)
题意:给你一个n*n的高度矩阵 要你找到里面最大的矩阵且最大的高度差不能超过m 思路:我们首先枚举上下右边界,然后我们可以用单调队列维护一个最左的边界 然后计算最大值 时间复杂度为O(n*n*n) # ...
- 用Python修改本机适配器信息
主要参考来自[用Python干实事(一)自动修改Windows的IP.网关和DNS设置]. 使用_winreg模块来操作注册表实现相关信息的修改,它是python的内置模块.也可以通过Win32 Ex ...
- poj3580 SuperMemo (Splay+区间内向一个方向移动)
Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 13550 Accepted: 4248 Case Time Limit: ...
- 【noi 2.6_2000】&【poj 2127】 最长公共子上升序列 (DP+打印路径)
由于noi OJ上没有Special Judge,所以我是没有在这上面AC的.但是在POJ上A了. 题意如标题. 解法:f[i][j]表示a串前i个和b串前j个且包含b[j]的最长公共上升子序列长度 ...
- hdu3577 Fast Arrangement
Problem Description Chinese always have the railway tickets problem because of its' huge amount of p ...
- IIS Web API 长时间不连接后第一次访问非常缓慢
搭建在 IIS 上的 Web API 若长时间不访问,会出现第一次访问耗时较长的现象,这与其调用应用程序池的 Idle Time-out(minutes) 即闲置超时设置有关.默认值为20,修改为0即 ...
- github 无法访问
描述: 1. ping 丢失 100% 2. git 失败 Failed to connect to github.com port 443: Timed out 3.打开网站 超时 解决: http ...