首页 > 其他分享 >UML——类图

UML——类图

时间:2022-11-30 17:06:59浏览次数:36  
标签:关系 泛化 组合 类图 之间 UML 就是


类图是UML中用的最多的图 有此可知类图是非常重要的

类图 英文是 Class Diagram 形状很简单 是由一个矩形、两个矩形或三个矩形构成的 

如下图:


     

 

如图中所示 最上面一栏是类名 就是这个类的名字 第二栏是类的属性(一个类可以有一个或多个属性 当然还有些类没有属性)  第三栏就是类的方法也叫类的操作 就是说这个类可以做什么(和类的属性一样类的方法可以有一个或多个 也可以一个也没有)


类与类之间的关系:

上面只说了一个类的构成 我们写程序的时候不可能只有一个类 通常都会有好多类 如何处理好这些类之间的关系是一种很重要的事 

下面让我们看一下类与类之间有什么关系:

关联  关联分为组合跟聚合

聚合(Aggregation):直接说组合的定义我感觉不是很容易理解 还是举个例子吧 我个人比较喜欢足球 所以就举个跟足球有关的例子吧

其实球员跟俱乐部之间的关系就是一种聚合关系 俱乐部由球员组成 球员属于俱乐部 俱乐部可以买卖球员 而球员也可以选择自己向往的俱乐部 他们之间没有什么必然的关系 而组合就不同了

聚合用实心箭头末尾加上空心的菱形来表示 空心菱形也可以理解为关系弱


组合(Composition):上图皇马跟C罗和卡卡的关系就是聚合关系 他们之间没有什么必然的关系 C罗和卡卡无论谁转会都不会让皇马有本质的改变 而有组合关系的类他们之间的关系是非常紧密的 C罗与C罗自己的脚、自己的手之间的关系就是这种组合关系

组合用实心箭头加上末尾的实心菱形表示 实心菱形可以理解为关系强


C罗的手跟脚相比他跟皇马的关系显然紧密了许多 如果C罗没有了脚 或没有了手 那么对他的影响是巨大的 对他来说是本质上的影响


还有一个关系就是泛化/继承(Generalize) 泛化和继承其实是一个逆过程 泛化就是有子类抽象出一个父类 而继承就是由父类具体化一个子类 例如足球比联赛跟什么西甲 意甲 英超之间就是泛化/继承的关系

泛化/继承用空心实线箭头表示


最后一种关系就是依赖(Dependency) 所谓依赖顾名思义 就是一个受另一个类的影响与制约 这就好比足球赛跟比赛规则之间的关系 一场足球赛要按照比赛规则才可以顺利的进行 而且比赛规则的改变会影响到比赛

以上就是类图中的一些东西 我的理解很肤浅 有说的不对的地方 希望大家多多指教

标签:关系,泛化,组合,类图,之间,UML,就是
From: https://blog.51cto.com/liushuijinger/5899951

相关文章

  • UML——用例图
    下图是一个再简单不过的用例图用例图主要就是由上面一个小人一个椭圆还有箭头组成的看起来还蛮好看滴那么它是用来干嘛滴捏小人跟椭圆又分别代表啥捏看完下面你就知......
  • UML类图详解
    统一建模语言(UnifiedModelingLanguage,UML)是一种为面向对象系统的产品进行说明、可视化和编制文档的一种标准语言,是非专利的第三代建模和规约语言。UML是面向对象设计......
  • UMLChina答疑记录更新
    ·系统给某些人发消息或者处理·接口契约文档属于哪一个工作流·系统用例是否都从业务序列图映射·"宅男"组织应该是哪些价值的集合·想表示消息返回值为Cus......
  • 产品需求文档写作方法(三)用例文档(UML用例图、流程图)
    在产品和技术领域里都有UML的技能知识,而对于产品人员的UML则更多的是指用例图,也就是我所称呼的用户流程图。在讲PRD文档写作的第二篇文章里,我提到了用户流程图的制作,实际上......
  • PlantUML画类图、流程图、时序图使用详解
    程序员难免要经常画流程图,状态图,时序图等。以前经常用visio画,经常为矩形画多大,摆放在哪等问题费脑筋。有时候修改文字后,为了较好的显示效果不得不再去修改图形。今天介绍......
  • 【软件工程】UML中类之间的六大关系
    前言快速回忆一、泛化关系(Generalization)说明:这种关系就是面向对象语言中的继承关系,逻辑上可以用"isa"表示。代码体现:子类继承父类。UML符号:​​一条实线+空心箭头​​。图......
  • UML(不含考题)
    一、考试题型简答题6个共30活动图绘制10绘制用例图20给定一个涉众概要,绘制用例图。用例描述题10根据上面画出的用例图,任选一用例,写出其用例描述。用例描述格式......
  • UML图初识
    初识UML        统一建模语言(UnifiedModelingLanguage,UML)是一种为面向对象系统的产品进行说明、可视化和编制文档的一种标准语言,是非专利的第三代建模和规约......
  • UML 哲学之道——类图[三]
    前言简单整理一些uml中的类图。正文类的基本表示法:名称、属性(类型、可见性)、方法(参数、返回值、可见性)想上面这样,第一行是名称,第二行是属性,第三行是方法可见性:表......
  • UML 哲学之道——概况篇[二]
    前言简单介绍一下uml的概况篇。正文UML概述:url包括:事物关系图扩展机制事物:结构:类、接口、构件、节点等等行为:交互、状态等等分组:包、子系统等等注释......