码迷,mamicode.com
首页 > 其他好文 > 详细

UML类图

时间:2020-09-21 12:02:17      阅读:57      评论:0      收藏:0      [点我收藏+]

标签:数字   prot   关联关系   划线   连线   继承   实现   real   接口   

类与类间的关系

在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization)关联(Association)聚合(Aggregation)组合(Composition)依赖(Dependency)

泛化

泛化(Generalization)表示类与类之间的继承关系,接口与接口之间的继承关系,或类对接口的实现关系

继承

继承表示是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力。

继承使用空心三角形+实线表示。如图唐老鸭继承鸭类,是鸭类的一种。

技术图片

实现

实现表示一个class类实现interface接口(可以是多个)的功能

实现使用空心三角形+虚线表示。如图飞翔是一个接口,大雁实现了飞翔接口。

技术图片

记忆

  • 空心三角形:继承或实现
  • 实线-继承,is a 关系,扩展目的,不需,很结实
  • 虚线-实现,虚线代表虚无实体

依赖

对于两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一个对象的服务时,这两个对象之间主要体现为依赖关系。

依赖关系用虚线箭头表示。依赖通常是一个类将另一个类的对象作为参数传入或者返回该类的对象,如图动物依赖氧气和水,将氧气和水作文参数传入。

技术图片

记忆

  • 虚线-依赖关系:临时借用一下,若即若离
  • 表示一种使用关系,一个类需要借助另一个类实现功能

关联

对于两个相对独立的对象,当一个对象的实例与另一个对象的一些特定实例存在固定的对应关系时,这两个对象之间为关联关系。

依赖关系用实线箭头表示。关联通常是一个类将另一个类的对象作为属性。

技术图片

记忆

  • 实线-关联关系,实打实的关系
  • 表示一个类对象和另一个类对象有关联
  • 通常是一个类中有另一个类的对象作为属性

聚合

表示一种弱的‘拥有’关系,即has-a的关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分。 两个对象具有各自的生命周期。

聚合关系用空心菱形+实线箭头表示。每一只大雁都属于一个大雁群,一个大雁群可以有多只大雁。当大雁死去后大雁群并不会消失,两个对象生命周期不同。

技术图片

组合

组合是一种强的拥有关系,是一种contains-a的关系,体现了严格的部分和整体关系,部分和整体的生命周期一样。

组合关系用实心的菱形+实线箭头表示,还可以使用连线两端的数字表示某一端有几个实例。鸟和翅膀就是组合关系,因为它们是部分和整体的关系,并且翅膀和鸟的生命周期是相同的。

技术图片

记忆

  • 菱形是一个盛东西的器皿
  • 聚合:代表空器皿可以放很多相同的东西,聚在一起,是弱关系
  • 组合:代表器皿里已经有实体存在,生死与共,是强关系

UML类图属性,方法表示

技术图片
+ 表示 public
- 表示 private
# 表示 protect
~ 表示 default
_ 下划线表示 static
斜体表示抽象

完整UML类图Demo

技术图片

UML类图

标签:数字   prot   关联关系   划线   连线   继承   实现   real   接口   

原文地址:https://www.cnblogs.com/Wenjin-Liu/p/13694093.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!