自学内容网 自学内容网

软件开发中UML的基本概念与UML类图中存在哪些关系与如何绘制?

UML的概述

UML在维基百科中是这样子描述的
在这里插入图片描述

可以使用的工具这里网上说的有些花哨,我自己一般使用processon,里面的UML相关功能就很全。

UML类图的相关概念解释

解释一下什么是类图?

定义系统中的类,描述系统中类的属性和方法,就是描述类的内部结构,表示类与类之间的关系。
下面用一张图来表示一下我理解的类的关系,如果有不对的地方还希望各位读者评论区指正!
在这里插入图片描述

类在UML图中符号之间表示的具体含义

  • 公有属性:使用+号表示 public
  • 私有属性:使用-号表示 private
  • 保护熟悉:使用#号表示 protect

类与类之间关系的详解

继承关系

使用实线+空心三角箭头表示
在这里插入图片描述

实现关系

使用虚线+空心三角箭头表示
在这里插入图片描述

依赖关系

使用虚线+箭头表示

这里需要注意一下的是,依赖关系是具有偶然性质,关系比较弱。在代码的书写中结合下面例子可以简单理解就是氧气类作为动物类的参数(或者局部方法存在),箭头的表示是反过来的!!!!

在这里插入图片描述

关联关系

使用实线+箭头表示

属于强关联,结合下图表示就是气候类作为成员变量的形式存在与企鹅类中

在这里插入图片描述

聚合关系

实线+空心菱形表示

聚合关系是关联关系的一种特例,在代码中表示是一个类作为另一个类的成员变量。
属于整体与部分的关系。英语语法可以使用has-a表示

在这里插入图片描述

组合关系

使用实线+实心菱形表示

组合关系也是属于关联关系的一种特例。
关系程度强于聚合,英语语法表示使用contains-a表示
整体与部分的生命周期相同

在这里插入图片描述

总结

一般在设计的过程中,类与类之间使用多组合少聚合,类与接口,服务与类,服务与API等之间多依赖,少关联。


原文地址:https://blog.csdn.net/weixin_50503886/article/details/140670651

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!