iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > html >如何掌握UML类图
  • 131
分享到

如何掌握UML类图

2024-04-02 19:04:59 131人浏览 薄情痞子
摘要

这篇文章主要介绍“如何掌握UML类图”,在日常操作中,相信很多人在如何掌握UML类图问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何掌握UML类图”的疑惑有所帮助!接下来,

这篇文章主要介绍“如何掌握UML类图”,在日常操作中,相信很多人在如何掌握UML类图问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何掌握UML类图”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

乡村爱情类图学习

UML(Unified Modeling  Language),是一种面向对象设计的建模工具,建模的核心是模型,模型是现实的简化、真实的抽象。

在 UML 中,所有的描述包括:事务、关系、图这三部分构件组成,如下图为所有构件的关系。

如何掌握UML类图

UML 构件关系图,来自设计模式

接下来,我们就着重讲解UML中的类图关系,在乡村爱情人物里的体现。

1. 类图模型

UML 类图(Class Diagrams),是使用频率最高的 UML  图之一,类图可以表示出类、接口和它们之间的协作关系。各个接口、类、属性、方法,可以用如下方式表达。

如何掌握UML类图


UML 类图中,接口、类、属性、方法,表达方式

2. 继承关系代码

public class 谢广坤 { private String 辈分; public void 作妖(){}}public class 谢永强  extends 谢广坤 {}public class 谢飞机 extends 谢广坤 {}

类图

如何掌握UML类图

UML类图,继承关系

  • 功能:继承关系

  • 概念:继承(Generaliztion)又叫泛化,用于表示子类继承父类的所有功能。

  • 场景:谢广坤的作妖技能,谢永强和谢飞机继承。谢飞机继承的更好,更能作。

3. 实现关系

代码

public interface 舞术 {     void 招式(); }  public class 刘能 implements 舞术 {     private String 来将姓名;     public void 招式() {     } }  public class 赵四 implements 舞术 {     private String 来将姓名;     public void 招式() {     } }

类图

如何掌握UML类图

UML类图,实现关系

  • 功能:实现关系

  • 概念:接口、抽象类声明的方法,由类实现(Realiztion)其功能。

  • 场景:在赵四和刘能的一场比舞中,赵四花式走位,被刘能找准时机一踢撂倒。

4. 组合关系

代码

public class 结婚证 {      private 赵玉田 男方;     private 刘英 女方;      public void set男方(赵玉田 男方) {         this.男方 = 男方;     }      public void set女方(刘英 女方) {         this.女方 = 女方;     } }  public class 赵玉田 {      private int 年龄;     private String 性别;  }  public class 刘英 {      private int 年龄;     private int 性别;  }

类图

如何掌握UML类图

UML类图,组合关系

功能:组合关系

概念:组合(Combination)关系表示类中整体与部分的关系,整体与部分相依相存。

场景:赵玉田和刘英的结婚证,缺一不可。

5. 聚合关系代码

public class 山庄 {      private 宋晓峰 晓峰;     private 李宝库 宝库;      public void 药膳房(李宝库 宝库) {         this.宝库 = 宝库;     }      public void 保安部(宋晓峰 晓峰) {         this.晓峰 = 晓峰;     }  }  public class 李宝库 {      private String 职业;  }  public class 宋晓峰 {      private String 职业;  }

类图

如何掌握UML类图

UML类图,聚合关系

  • 功能:聚合关系

  • 概念:聚合(Aggregate)关系,也是用于表示对象的整体和部分,但成员对象可以与整体对象分离独立存在。

  • 场景:在⛰山庄中药膳方有李宝库、保安部有宋晓峰。但李宝库和宋晓峰都只是其中的一员,都可以离开山庄。

6. 关联关系

代码

public class 豆腐厂 {     private 王小蒙 员工;     public void 添加员工(王小蒙 小蒙){         this.员工 = 小蒙;     } }  public class 王小蒙 {     private 豆腐厂 企业;     public void 添加企业(豆腐厂 豆腐厂){         this.企业 = 豆腐厂;     }  }

类图

如何掌握UML类图

UML类图,关联关系

  • 功能:关联关系

  • 概念:关联(Association)关系,是类之间常用的一种关系,表示一类对象与另一类对象的联系。组合、聚合也属于这种关系,但关联关系更弱。

  • 场景:豆腐厂里有王小蒙,但豆腐厂里又不只是有王小蒙,还有王老七。即使小蒙不在,豆腐厂也可以正常运行。而王小蒙还有自己的其他企业,所以这属于一种关联关系。

7. 依赖关系

代码

public class 招商引资 {     public void 招商(王大拿 大拿){     } }  public class 王大拿 {     private String 资源; }

类图

如何掌握UML类图

UML类图,依赖关系

  • 功能:依赖关系

  • 概念:依赖(Dependency)关系当表示一个事务需要使用另外一个事务时,可以使用依赖关系。

  • 场景:招商引资需要王大拿,但并只是就只有这一个大拿。王大拿不来,可能还有李大拿、张大拿。

赵家班全景类图

综上,这6种关系里,组合、聚合、关联代码结构类似,可以从依赖的强弱进行理解。强弱关系依次是:继承 > 实现 > 组合  > 聚合 > 关联 > 依赖。

为了更清楚的表达出 UML 类关系,我们把这些画到一整张图中,如下;

如何掌握UML类图


UML类图,赵家班全景类图

总结

  • 有人说,如果我们和外星人?非常友善的通信了。那么两个星球之间会进行一些交流,比如问,你好,地球人?人你多高呀?地球说1.75米。外星人晕了,米是什么单位?这样就只能选取两个星球通用的标准来定义,比如:1米是光在真空中1/299792458秒内经过的距离。

  • 其实程序开发也是这样的,为了可以让大家减少对新知识内容的理解的沟通成本,需要定义一些沟通标准,比如UML类图。所以我们需要学习这些标准的工具化语言,来减少沟通成本,提升工作效率。

  • UML类图也是最常用的图稿,同时也非常易于掌握。为了可以把自己的知识面铺设的更加完善,技术栈掌握的更加夯实,也为了突破每一个阶段的瓶颈。那就需要不断学习,不断的积累,找机会破局。

到此,关于“如何掌握UML类图”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: 如何掌握UML类图

本文链接: https://www.lsjlt.com/news/84459.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何掌握UML类图
    这篇文章主要介绍“如何掌握UML类图”,在日常操作中,相信很多人在如何掌握UML类图问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何掌握UML类图”的疑惑有所帮助!接下来,...
    99+
    2022-10-19
  • 如何掌握JavaScript数字类型
    这篇文章主要讲解了“如何掌握JavaScript数字类型”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何掌握JavaScript数字类型”吧!JavaSc...
    99+
    2022-10-19
  • 如何掌握图计算平台GraphScope
    本篇内容主要讲解“如何掌握图计算平台GraphScope”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何掌握图计算平台GraphScope”吧!一 ...
    99+
    2022-10-19
  • UML协作图如何创建
    要创建UML协作图,可以按照以下步骤进行: 确定协作图的目的和范围:确定协作图要描述的系统或模块,并明确图表的目的,例如展示对象...
    99+
    2023-10-24
    UML
  • 如何掌握Synchronized
    本篇内容主要讲解“如何掌握Synchronized”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何掌握Synchronized”吧!使用synchronized关键字是Java并发编程中线程同...
    99+
    2023-06-15
  • 如何掌握Promise
    本文小编为大家详细介绍“如何掌握Promise”,内容详细,步骤清晰,细节处理妥当,希望这篇“如何掌握Promise”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。异步编程想要学习promise,你必须要懂得什么是...
    99+
    2023-07-05
  • 如何掌握Spring
    这篇文章主要讲解了“如何掌握Spring”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何掌握Spring”吧!Spring 是一个控制反转依赖管理的容器,...
    99+
    2022-10-19
  • 如何掌握JSONP
    本篇内容主要讲解“如何掌握JSONP”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何掌握JSONP”吧! 一个正常的请求: JSON正常发请求时,c...
    99+
    2022-10-19
  • IDEA中如何集成JIRA、UML类图插件、SSH、FTP、Database管理
    这篇文章主要介绍了IDEA中如何集成JIRA、UML类图插件、SSH、FTP、Database管理,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、与JIRA集成jira是一...
    99+
    2023-06-19
  • 如何掌握ava反射
    这篇文章主要介绍“如何掌握ava反射”,在日常操作中,相信很多人在如何掌握ava反射问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何掌握ava反射”的疑惑有所帮助!接下来,...
    99+
    2022-10-19
  • 如何掌握JavaScript对象
    这篇文章主要介绍“如何掌握JavaScript对象”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“如何掌握JavaScript对象”文章能帮助大家解决问题。JavaS...
    99+
    2022-10-19
  • 如何掌握Java并发
    这篇文章主要介绍“如何掌握Java并发”,在日常操作中,相信很多人在如何掌握Java并发问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何掌握Java并发”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!1、...
    99+
    2023-06-15
  • 如何掌握Java泛型
    本篇内容介绍了“如何掌握Java泛型”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 为什么要用泛型设想一个场景,我们希望用Java...
    99+
    2023-06-15
  • 如何掌握Java变量
    本篇内容介绍了“如何掌握Java变量”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!01、局部变量在方法体内声明的变量被称为局部变量,该变量只...
    99+
    2023-06-16
  • 如何掌握MyBatis动态SQL
    这篇文章主要介绍“如何掌握MyBatis动态SQL”,在日常操作中,相信很多人在如何掌握MyBatis动态SQL问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何掌握MyBa...
    99+
    2022-10-18
  • 如何快速掌握Fink SQL
    这篇文章主要讲解了“如何快速掌握Fink SQL”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何快速掌握Fink SQL”吧!1、导入所需要的的依赖包&l...
    99+
    2022-10-18
  • 如何掌握分布式Paxos
    这篇文章主要讲解了“如何掌握分布式Paxos”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何掌握分布式Paxos”吧!Paxos 算法Paxos 是分布式...
    99+
    2022-10-19
  • 如何掌握Synchronized关键字
    这篇文章主要讲解了“如何掌握Synchronized关键字”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何掌握Synchronized关键字”吧!一、sy...
    99+
    2022-10-19
  • 如何掌握阻塞队列
    这篇文章主要讲解了“如何掌握阻塞队列”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何掌握阻塞队列”吧!什么是队列队列是一种 先进先出的特殊线性表,简称 F...
    99+
    2022-10-19
  • 如何掌握static关键字
    本篇内容介绍了“如何掌握static关键字”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!“哥,一周过去了,...
    99+
    2022-10-19
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作