UML 类图画法规则

本学期OO课程用java来学习面向对象程序设计与构造,课程博客作业要求自行独立绘制类图、协作图等,所以简单学习一下类图和协作图的绘制,本篇博客主要记录类图绘制的一些关键点,方便日后查阅。

类型表示

  1. 类(class):用如图方块表示,其中最上方一空格区为类名,紧接着为属性(<可见性><变量名 >: <变量类型>)、方法(<可见性><方法名>)、异常等。

  2. 接口:用圆圈表示,注明接口名称

类间关系

  1. 继承(extends):空心三角箭头的实线表示,从子类指向父类,子接口指向父接口。

  1. 实现(implement):空心三角箭头虚线表示,类指向实现的接口(也可以直接实线将类与接口相连接)

依赖、聚合、组合辨析:

​ 依赖:体现为局域变量、方法的形参,或者对静态方法的调用,如人依赖电脑处理工作

​ 聚合:体现为成员变量,即整体与部分的关系,部分能够独立于整体而存在,如汽车与轮胎的关系

​ 组合:体现为成员变量,也是整体与部分的关系,部分不能脱离整体而存在,如人与大脑的关系

  1. 依赖(类间引用):由指向被引用者的带箭头虚线表示

  1. 聚合:用空心菱形的实线表示,如下图

  1. 组合:用实心菱形实线表示

UML 类图画法规则相关推荐

  1. UML类图画法及类之间几种关系

    文章目录如下: 一.类图画法 二.类之间的几种关系:泛化(Generalization).实现(Realization).关联(Association)(又分一般关联.聚合(Aggregation). ...

  2. 001统一建模语言和UML类图画法

    目录 1UML类图概念 2UML类图画法 3使用visio画uml类图 4使用idea查看UML类图(很方便) 5类的六大关系及画法 5.1依赖关系 5.2泛化关系(继承关系) 5.3 实现关系 5. ...

  3. UML类图画法、举例说明、通俗易懂

    本文章和大家分享如何画UML类图,因为在计算机毕业设计.课程设计.文档报告中经常用到,所以还是有必要和大家共同来学习一下. 在UML类图中,常见的有以下几种关系: 1.泛化(Generalizatio ...

  4. Android UML类图介绍及画法

    转载于:http://uule.iteye.com/blog/2078935 继承.实现是三角型箭头,其他都为箭头 组合.聚合都有一个菱形端,且都为实线,其他都无菱形端 继承是实线,实现是虚线 关联是 ...

  5. 【UML】如何记忆UML类图的画法

    目录 1. 前言 2. 元素 2.1. 访问权限 3. 类之间的各种关系 3.1. 泛化 3.2 关联 3.3. 依赖 4. 另一篇参考的博文 1. 前言 UML类图形象反映系统类之间的关系,在正规的 ...

  6. Java:封装的概念,UML类图,构造方法,this关键字,static关键字,方法重载,包package

                     oop三大特性:封装,继承,多态 oop一般指面向对象程序设计(一种计算机编程架构) 一.封装的概念:    将东西包在一起,然后以新的完整形式呈现出来       ...

  7. 23种设计模式 UML 类图及对应示例代码 (二)

    23种设计模式 UML 类图及对应示例代码 (二) 11.DoFactory.GangOfFour.Flyweight.Structural Flyweight:运用共享技术有效的支持大量细粒度的对象 ...

  8. JAVA SE、EE、ME,JRE、JDK,基本数据类型,访问修饰符、函数、封装的概念、UML类图、构造方法、this关键字、static关键字、方法重载、方法重写、包(packahe)

    运行第一个JAVA程序: 这里使用的开发环境是eclipse,新建一个java工程,然后可以看到src这个是存放java代码的地方,然后在src文件右击新建一个class(类),然后可以看到下图,同样 ...

  9. visio画uml类图添加自定义数据类型

    类图(Class Diagram): 类图是面向对象系统建模中最常用和最重要的图,是定义其它图的基础.类图主要是用来显示系统中的类.接口以及它们之间的静态结构和关系的一种静态模型. 类图的3个基本组件 ...

  10. UML类图操作(一)

    UML类图操作(二) 类图(Class Diagram)用于描述系统中所包含的类以及它们之间的相互关系,帮助人们简化对系统的理解,它是系统分析和设计阶段的重要产物,也是系统编码和测试的重要模型依据.在 ...

最新文章

  1. ios snapkit m_如何使用自动布局和SnapKit在iOS上创建漂亮的拉伸布局
  2. 新的服务器装Ubuntu系统(如何在windows下制作启动盘以及如何安装Ubuntu系统)
  3. 等差数列划分Python解法
  4. css 列 布局,CSS二列三列布局
  5. python调用jar字典类型_LWPCookieJar的使用-将requests存储的cookie转换成字典
  6. 26.如何实现关机时清空页面文件:
  7. 批量处理文件,正则表达式处理文件
  8. spring cloud简介之最好参考
  9. oracle异机复制,oracle冷备份恢复和oracle异机恢复使用方法
  10. WordPress优化:为原创文章和转载文章分别添加不同的版权申明
  11. 读书笔记:陈希孺:概率论与数理统计:2014.01.01
  12. 如何设置Java桌面程序界面外观(How to Set the Look and Feel) UIManager
  13. 斐讯t1刷入linux系统,斐讯phicomm n1刷入Gentoo系统斐讯N1刷Linux系统教程
  14. TS封装格式小白入门分析总结(二)之工具的使用
  15. uniapp基础开发模板
  16. 正则表达式过滤非数字字符串
  17. 微信小程序开发详细步骤是什么?
  18. 计算机网络应用云计算,计算机网络云计算技术应用
  19. Chrome主页被强制修改为百度解决办法
  20. 计算机硬件具体都包含哪些,电脑硬件包括哪些

热门文章

  1. 在哪里可以查询中国某一地区的历史气象数据(过去15年,如降雪,降雨等)?
  2. IDEA / webstorm 破解
  3. android屏幕适配无效_AndroidAutoLayout
  4. axure rp10安装教程,axurerp10安装步骤
  5. vmware服务器虚拟机重新安装系统教程,在VMware虚拟机装系统教程_vmware装系统_U盘工具_装系统教程_课课家...
  6. Datalogic得利捷推出具有强大视觉系统功能的紧凑型智能相机P2X系列
  7. DoS攻击原理与实战(LOIC+Hping3)
  8. 【NFC】 NfcA/NfcB/NfcF/NfcV/IsoDep/Ndef/Mifare/Felica/Pboc/ISOxxxx 都是些什么鸟玩意?
  9. java项目加载器_Java程序的类加载器
  10. 人声修音插件 – Antares Auto-Tune Pro 9.1.0.5 WiN