类图的表示形式

我们可以看到类图是使用一个矩形来表现我们的类。最上面是类名,中间是属性,方法在最下面。

属性

属性的前面我们可以看到有加减号,他们是用来表示这个属性或方法的可见性的。

"+"表示public,"-"表示private

属性后面的等于号是用来表示属性的默认值的。

可见性  名称 :类型 [ =默认值]

方法

可见性  名称(参数列表) [: 返回类型]

返回类型可写可不写

比如上图的operation2就没有写返回参数,但是如果可以的话建议都写

类与类之间关系

五种关系以及对应的类图画法需要掌握,这里主要是线条的画法需要掌握。

在processon的页面中选中线条之后,可以在上面的工具栏选择线条的起点和终点。

关联关系

关联可以分为单向关联和双向关联。

单向关联

单项关联使用一个带箭头的直线表示,代表A持有B。

上图代表的是一个用户有多个联系地址可供用户下单时选择,这就是一个单向关联。

双向关联

双方各自持有对方类型的成员变量,也就是A中有B,B中也有A。这个就很好理解了,掘金用户有人写了很多的文章,文章又有很多人点赞。

如果我们能够拿到这两个之间的关系,那么计算恶意刷赞就能变得非常简单。

依赖关系

依赖关系用一条带有箭头的虚线表示,代表的是A必须需要B才能发挥作用。体现在某个类的方法使用另一个类的对象作为参数。

泛化关系

用带空心三角形的直线表示,用来表示父类和子类之间的关系,也有的地方叫继承关系。

对于交通工具这个父类而言,汽车和自行车都是它的子类。

聚合关系

UML中聚合关系用带空心菱形和箭头的直线表示,这是一种弱依赖,整体不存在的时候,部分仍可独立存在。

比如上面的LoginBO中的validate方法,就使用了IUserDAO中的findUserByAccAndPwd方法,但是当去掉了LoginBO,还会有其他地方用到IUserDAO的。

组合关系

组合关系用一个带实心菱形和箭头的直线表示,两者表示强依赖关系,整体不存在的情况下,部分也就没有存在的必要了。

LoginBO就是为了LoginForm服务的,当LoginForm被干掉的时候,LoginBO也就没有存在的必要了。

实现关系

用来关联说明和实现。用带空心三角形的虚线表示。我们的Service层经常使用实现关系,一个接口对应多个实现

UML类图以及类与类之间的关系相关推荐

  1. 快速读懂UML类图,搞懂类之间的6大关系,轻松绘制UML类图

    快速读懂UML类图,搞懂类之间的6大关系,轻松绘制UML类图 前言 一.UML类图简介 二.类之间的六大关系及UML类图 1.依赖关系及UML类图表示 2.泛化关系及UML类图表示 3.实现关系及UM ...

  2. 分析阶段的类图和设计阶段的类图有什么区别?

    设计类图是类图的一个变体,类图表示一系列的类以及它们之间的关系.因为分析阶段是一个发现需求的过程,所以我们一般很少关心类的属性和方法的细节.在面向对象设计中,类的属性有一个特征叫可见性,它表示其它类是 ...

  3. java设计模式之UML③类图讲解多个类之间的关系

    图来自大话设计模式 虚线和箭头指向依赖关系,也就是动物类依赖氧气类和水类 一般依赖关系是一个类使用另一个类作为参数使用 动物是一个父类 鸟继承动物 其中空心三角继承关系(箭头方向是子类指向父类) 实心 ...

  4. 类图中表达总体与局部的关系_UML试题及答案

    页脚内容 1 一.单项选择题: (本大题共 20 小题,每题 1 分,共 20 分) 1. UML 的全称是 Unified Modeling Language ( A ) Unify Modelin ...

  5. 一图明白ACHI,SATA之间的关系

    从上图中可以看到,SATA与PCI-E不仅可以指代物理的接口,还可以指代物理接口使用的传输协议. M.2物理接口可以使用SATA.PCI-E传输协议. U.2可以使用PCI-E传输协议.在网上搜了一下 ...

  6. GNN 的发展过程和一些理论(谱图表示学习 等)之间的关系

    来源均指这个理论的提出者或者讲解的论文&&书籍 1. 谱图理论(Spectral Graph Theory)是将图论与线性代数相结合的理论 来源:Spectral Graph Theo ...

  7. 【UML 建模】UML建模语言入门 -- 静态图详解 类图 对象图 包图 静态图建模实战

    发现个好东西思维导图, 最近开始用MindManager整理博客 . 作者 :万境绝尘  转载请注明出处 : http://blog.csdn.net/shulianghan/article/deta ...

  8. iOS开发 - 面向对象设计的设计模式(一):创建型模式(附 Demo UML类图)

    继上一篇的面向对象设计的设计原则,本篇是面向对象设计系列的第二个部分:面向对象设计的设计模式的第一篇文章. 另外,本篇博客的代码和类图都保存在我的GitHub库中:中的Chapter2. 最开始说一下 ...

  9. uml 时序图_面向对象设计与统一建模语言UML

    面向对象设计 自从面向对象编程语言在软件开发中成为主流之后,遵循面向对象技术特点的软件设计工作,也一并发展了起来. 首先要提出一个问题,就是设计的工作是要做什么? 它包括的范围其实是很广泛的,从搜集用 ...

  10. 浅谈UML类图中类之间的5种关系

    什么是UML类图? 类图显示了一组类.接口.协作以及他们之间的关系.在UML中问题域最终要被逐步转化,通过类来建模,通过编程语言构建这些类从而实现系统.类加上他们之间的关系就构成了类图,类图中还可以包 ...

最新文章

  1. 深入浅出--梯度下降法及其实现
  2. matlab中if语句的用法_if语句的基本用法
  3. 在iOS的XCode工程配置中为什么要用-all_load-ObjC
  4. java jar killed_容器中Java 程序OOMKilled原因浅析
  5. 4线电子围栏安装示意图_电子围栏报警系统安装施工过程(图解)
  6. Mybatis源码之数据源模块分析
  7. Java 蓝桥杯 字母图形
  8. SharePoint 2010版本表
  9. 旋转变换(二)欧拉角
  10. 基于Android的办公自动化系统APP设计与实现
  11. STN(spatial transformer network)论文与源码理解
  12. 我以前的痛苦,你也拥有吗?
  13. DFS回溯-函数递归-xiaoz triangles
  14. Nim博弈和威佐夫博弈 Return of the Nim
  15. 旅游 - 珠海长隆海洋王国 - 鹦鹉过山车
  16. jQuery是什么?和它的优缺点
  17. FX5U编程常用特殊软元
  18. 数据备份及恢复需求分析
  19. 对.ART域名注册局的投诉(工信部版)
  20. 谷歌cloud_参加Google Cloud专业机器学习工程师考试的20天Beta

热门文章

  1. 幼儿园教师计算机运用论文,幼儿园教师论文//浅析信息技术带动教育教学的应用...
  2. Linux查看网络连接情况ss,Linux网络状态工具netstat和ss使用详解
  3. 自定义View之案列篇(一):魔方
  4. 使用U盘代替光盘来刻录ISO镜像文件的方法
  5. 单元测试、注解、枚举、反射(5)JavaSE
  6. 引用SMTH的一个“坑”!
  7. 光纤交换机常见硬件、软件故障问题介绍
  8. iOS数字金额转化为大写汉字(阿拉巴数字转化为汉字)
  9. 学会这4招,轻松解决开关电源EMI
  10. Cryptarithmetic Problem ‘ODD+ODD == EVEN’;map()函数,reduce()