设计模式之UML类图

栏目: 后端 · 发布时间: 4年前

内容简介:类图(Class diagram)主要用于描述系统的结构化设计。类图也是最常用的UML图,用类图可以显示出类、接口以及它们之间的静态结构和关系。

类图(Class diagram)主要用于描述系统的结构化设计。类图也是最常用的UML图,用类图可以显示出类、接口以及它们之间的静态结构和关系。

0x01.类图中的元素

1.类 Class / 接口 Interface

设计模式之UML类图

  • 第一格:表示类的名字,抽象类用斜体表示,接口在前面加
  • 第二格:表示类的属性,前面符号表示作用于,冒号后面表示类的类型
符号 解释
+ public
- private
# protected
~ default
下面有横线 表示static静态属性
  • 第三格:表示类的行为,同上
符号 解释
+-#~ 同上
斜体 抽象方法
下面有横线 表示static静态方法
:String :后表示返回值,返回String字符串类型
无: 表示void无返回

2.UML类图中各个类的关系

设计模式之UML类图

a).依赖关系

  • 一个类需要借助另一个类来实现功能是依赖关系,使用虚线和箭头,箭头指向被依赖的对象

b).泛化继承关系

  • 空心箭头实线,箭头方向是子类指向父类来表示,只有知道对方信息才能指向对方

c).组合关系

  • 实心菱形和大于箭头,实线。组合关系可用在两侧写上数字,表示一只鸟两个翅膀。组合关系对象同样生命周期

d).关联关系

  • 表示一个类和另外一个类是有关联的,一般有一个属性是另一个类,用实线和大于箭头,指向被关联对象

e).聚合关系

  • 空心菱形和大于箭头。整体和局部的关系,两者拥有独立的生命周期,是has-a的关系。空心菱形是可以放东西的盘子,可以用来装东西。东西放在盘子里就可以装进去

f).实现关系

  • 空心三角和虚线,指向接口

g).接口表示

  • 棒棒糖表示法

3.相似关系比较

a).依赖关系和关联关系

  1. 依赖关系:一般实现在方法上,不调用方法不需要使用,虚无缥缈,虚线
  2. 关联关系:是属性依赖,很关键,实打实的

b).聚合关系和组合关系,空心和实心菱形

  1. 菱形的方向,数量少的是菱形的方向
  2. 聚合是一个盘子可以称很多东西,但是他们是相同的,只是数量不同,不同的生命周期
  3. 组合的生命周期是相同的

c).继承和实现

  1. 继承:类和类之间的关系,很实
  2. 实现:限制的不明显,很虚
  3. 只有知道对方信息,才可以指向

以上所述就是小编给大家介绍的《设计模式之UML类图》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Rails 5敏捷开发

Rails 5敏捷开发

[美] Sam Ruby、[美] Dave Thomas、[美] David Heinemeier Hansson / 安道、叶炜、大疆Ruby技术团队 / 华中科技大学出版社 / 2017-12-30 / 115.00

本书以讲解“购书网站”案例为主线,逐步介绍Rails的内置功能。全书分为3部分,第一部分介绍Rails的安装、应用程序验证、Rails框架的体系结构,以及Ruby语言知识;第二部分用迭代方式构建应用程序,然后依据敏捷开发模式开展测试,最后用Capistrano完成部署;第三部分补充日常实用的开发知识。本书既有直观的示例,又有深入的分析,同时涵盖了Web开发各方面的知识,堪称一部内容全面而又深入浅出......一起来看看 《Rails 5敏捷开发》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

在线进制转换器
在线进制转换器

各进制数互转换器

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器