UML复习(一)--类图

 

基本介绍:

在UML类图中,可明确表述类、接口之间的一些关系,主要包括继承(类)、实现(接口)、依赖、关联、聚合及组合六种关系。

用freedgo画了一个复习用图,比较简单

根据对大自然的认知,上述例子看起来已经非常简单了,如图表述的六种关系,可以归纳总结一下,有助于记忆。

一:首先就是类与类或接口这种继承式或实现式的关系

类的画法:

  • 如上图,鱼表示一个类,拥有三个单元的矩形,从上到到下依次为类名、成员变量及方法。
  • 对成员变量及方法的修饰符:“-”代表私有(private),一般修饰成员变量;“+”代表共有(public),一般修饰方法;“#”代表包内访问。

接口的画法:

  • 如上图,产卵表示一个接口,拥有两个单元的矩形,第一个单元为接口名称,在接口名称之上,需明确表明《inteface》标识(标注为斜体);第二个单元为接口方法。

成员变量及方法等操作符都是相同的

继承关系描述:

  • 理解为“is-a”的关系,比如,鱼属于动物,子类天然继承父类的成员变量和方法,同时可以拥有自己的特性。
  • 参考图里鱼和动物的画法,连接线为,由子类指向父类。

接口实现关系描述:

  • 理解为“has-a”的关系,比如鱼可以有产卵的功能,我们把产卵(繁殖后代)定义为接口,可以理解很多动物都需要实现这个接口才具备这个功能。
  • 参考鱼和产卵接口的画法,连接线为,由实现类指向实现接口

总结:代表互相之间的继承、实现关系,箭头均是“空心三角形”并指向要继承或实现的类或接口;不同的是,继承是实线,接口实现为虚线。

二,类与类之间的依赖关系

依赖关系描述:

  • 理解为“use-a”关系,一个类使用另外一个类来实现功能,可以理解为临时使用,关系较“弱”。
  • 参考鱼和水温的关系,连接线为,箭头指向被依赖类。

关联关系描述:

  • 表达一种“强”依赖关系,需长期使用另外一个类来实现功能,例如鱼离不开水。
  • 参考鱼和水的关系,连接线为,箭头指向被关联类。

总结:代表互相之间的使用关系,箭头均是“正常三角箭头”并指向要使用(依赖)的类;不同的是,依赖是虚线,关联是实线。

三,类与类(群)的关系(整体和部分)

聚合关系描述:

  • 表达一种“弱”拥有关系,参考鱼和鱼群为一种弱化的整体和部分关系,关系不稳定,鱼可以随时脱离鱼群单独存在,鱼群也不在乎哪一只鱼不在了。
  • 连接线为,箭头由整体指向部分。

组合(合成)关系描述:

  • 表达这种整体和部分的“强”拥有关系,参考鱼和鱼鳃的关系,鱼必须拥有鱼鳃(并且鱼鳃本身不能单独存在)。
  • 连接线为,箭头由整体指向部分。

总结:整体和局部的关系,线两端均有箭头,由整体指向部分的箭头均为“正常三角箭头”,连接线均为实线,唯一不同的地方就是在整体端这一侧的箭头为空心或实心的菱形箭头,应用的时候需注意区分开来。

发布了18 篇原创文章 · 获赞 33 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/Dothwinds/article/details/104886289