美文网首页
浅谈UML类图

浅谈UML类图

作者: sharp367 | 来源:发表于2020-06-09 22:27 被阅读0次

什么UML类图

UML类图用于描述系统中类(对象)自身的组成和类(对象)之间的各自静态关系

先上干货,让大家有个整体的认识

image.png

类之间的关系

在UML类图中,常见的有以下几种关系: 依赖(Dependency)、泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition)

类图---依赖(Dependency)

类中用到了对方,那么他们之间就存在依赖关系

【概念】表示两个或多个模型元素之间语义上的连接关系

【绘图方式】虚线箭头,箭头指向被使用者
如:ClassA依赖于ClassB


image.png

【小结】

  1. 类中用到了对方

  2. 如果是类的成员属性

  3. 如果是方法的返回类型

  4. 是方法接受的参数类型

  5. 方法中使用到了

那么这两个类具有关联关系。

类图---泛化(Generalization)

泛化关系就是继承关系,是依赖关系的特例。

【概念】描述类的一般和具体之间的关系,描述的“is a kind of ”的关系

【绘图方式】实线空心三角箭头,箭头指向父类

【继承方式】

1.单继承:一个类只有一个父类

2.多继承:一个类可以有多个父类,可以从每一个父类中获得允许继承的信息
如: Class B继承与Class A


image.png

【小结】

泛化关系实际上就是继承关系

如果A继承了B,那么我们就说A和B存在泛化关系

类图-实现(Realization)

A类实现B接口,也是依赖关系的特例

【概念】将一种模型关系与另一种模型关系连接起来,从而说明和其实现之间的关系,简单的理解为一个类或多个类实现一个接口

【绘图方式】封闭空箭头的虚线,箭头指向接口
如:Class A实现了Interface A


image.png

类图-关联关系

类与类之间的关系,是依赖关系的特例 关联关系具有导航性:即双向关系或单向关系 关联关系有多重性:1:1,1:n,n:m
如: ClassA与ClassB相互关联


image.png

如:ClassA关联于ClassB

有方向的关联(DirectedAssociation)

image.png

类图---聚合(Aggregation)

【概念】聚合关系表示整体和部分的关系,描述了“has a”的关系,部分离开整体可以单独存在。聚合关系是关联关系的特例,具有导航性和多重性,使用空心菱性来表示。例如:电脑和鼠标,键盘的关系。

【绘图方式】空菱形的实线,头部指向整体
如: 计算机 has-a cpu


image.png

类图---组合(Composition)

【概念】组合也是关联关系的一种特例,他体现的是一种contains-a的关系,这种关系比聚合更强,也称为强聚合;他同样体现整体与部分间的关系,但此时整体与部分是不可分的,整体的生命周期结束也就意味着部分的生命周期结束;孕妇死了胎儿自然也就死了;表现在代码层面,和关联关系是一致的,只能从语义级别来区分。

【绘图方式】实菱形的实线,头部指向整体
如:孕妇 contains-a 胎儿


image.png

(本文由笔者自行整理,参考以下博客,欢迎转载,记得说明出处。)

参考博客:

http://www.mamicode.com/info-detail-2612659.html

https://blog.csdn.net/jiuqiyuliang/article/details/8568303

https://blog.csdn.net/duran1986/article/details/5573415

相关文章

  • 浅谈UML类图

    什么UML类图 UML类图用于描述系统中类(对象)自身的组成和类(对象)之间的各自静态关系 先上干货,让大家有个整...

  • [一]UML入门

    类图 二 UML类图讲解 三 UML类图讲解-自上而下 四 UML类图讲解-对比讲解

  • JavaScript面向对象之UML类图

    UML类图 什么是UML类图 UML(Unified Modeling Language)类图,中文意思为“统一建...

  • 浅谈安卓开发中context用到的装饰模式

    浅谈安卓开发中context用到的装饰模式 一、UML图 说明:Context类是最根部的抽象类,不实现具体的功能...

  • 一张图简述UML类图

    一张图简述UML类图 UML建模常用视图中,类图可算是最多的,初学UML的类图绘制,基于starUML工具,现简记...

  • 设计模式补完计划

    目录 1.uml类图2.uml时序图3.设计模式 uml类图 泛化关系(继承):指类继承自类,接口继承自接口的关系...

  • Java自学-接口与继承 UML图

    UML 图 步骤 1 : UML 图 —— 类之间的关系 UML-Unified Module Language统...

  • SDWebImage源码阅读(一)--基础架构

    SDWebImage架构图 SDWebImage的UML类图,具体UML类图的阅读规则,可以参考这篇文章:UML基...

  • 【JS设计模式3】UML类图

    UML类图 UML类图的画图工具 MS Office visio https://www.processon.co...

  • UML小结

    UML:统一建模语言;常见的UML图有: 类图 类图[https://blog.csdn.net/weixin_4...

网友评论

      本文标题:浅谈UML类图

      本文链接:https://www.haomeiwen.com/subject/uhkytktx.html