UML类图符号简介
1. 类(Class):使用三层矩形框表示。
第一层显示类的名称,如果是抽象类,则就用斜体显示。
第二层是字段和属性。
第三层是类的方法。
注意前面的符号,‘+’表示public,‘-’表示private,‘#’表示protected。
2. 接口:使用两层矩形框表示,与类图的区别主要是顶端有<<interface>>显示。
第一行是接口名称。
第二行是接口方法。
3. 继承类(extends):用空心三角形+实线来表示。
4. 实现接口(implements):用空心三角形+虚线来表示
5. 关联(Association):用实线箭头来表示,例如:燕子与气候
6. 聚合(Aggregation):用空心的菱形+实线箭头来表示
聚合:表示一种弱的‘拥有’关系,体现的是A对象可以包含B对象,但B对象不是A对象的一部分,例如:公司和员工
组合(Composition):用实心的菱形+实线箭头来表示
组合:部分和整体的关系,并且生命周期是相同的。例如:人与手
7. 依赖(Dependency):用虚线箭头来表示,例如:动物与氧气
8. 基数:连线两端的数字表明这一端的类可以有几个实例,比如:一个鸟应该有两只翅膀。如果一个类可能有无数个实例,则就用‘n’来表示。关联、聚合、组合是有基数的
类之间的关系
UML把类之间的关系分为以下5种.
● 关联:类A与类B的实例之间存在特定的对应关系
● 依赖:类A访问类B提供的服务
● 聚集:类A为整体类,类B为局部类,类A的对象由类B的对象组合而成
● 泛化:类A继承类B
● 实现:类A实现了B接口
关联(Association)
关联指的是类之间的特定对应关系,在UML中用带实线的箭头表示。按照类之间的数量对比,关联
可以分为以下三种:
● 一对一关联
● 一对多关联
● 多对多关联
注意:关联还要以分为单向关联和双向关联
依赖(Dependency)
依赖指的是类之间的调用关系,在UML中用带虚线的箭头表示。如果类A访问类B的属性或者方法,
或者类A负责实例化类B,那么可以说类A依赖类B。和关联关系不同,无须在类A中定义类B类型的属性。
聚集(Aggregation)
聚集指的是整体与部分之间的关系,在UML中用带实线的菱形箭头表示。
聚集关系还可以分为两种类型:
● 被聚集的子系统允许被拆卸和替换,这是普通聚集关系。
● 被聚集的子系统不允许被拆卸和替换,这种聚集称为强聚集关系,或者组成关系。
注:强聚集(组成)可用带实线的实心菱形箭头表示。
泛化(Generalization)
泛化指的是类之间的继承关系,在UML中用带实线的三角形箭头表示。
实现(Realization)
实现指的是类与接口之间的关系,在UML中用带虚线的三角形箭头表示。
以下是GOF设计模式中的描述
:
箭头和三角表示子类关系。
虚箭头线表示一个类实例化另一个类的对象,箭头指向被实例化的对象的类。
普通的箭头线表示相识(acquaintance也叫关联或者引用),意味着一个对象仅仅知道另一个对象。相识的对象可能请求彼此的操作,但他们不为对方负责,它只标示了对象间较松散的耦合关系。
尾部带有菱形的箭头线表示聚合(aggregation),意味着一个对象拥有另一个对象或者对另一个对象负责。一般我们称一个对象包含另一个对象,或者是另一个对象的一部分。聚合意味着聚合对象和其所有者具有相同的生命周期。
抽象类名以斜体表示,抽象操作也以斜体表示。图中可以包括实现操作的伪代码,代码将出现在带有褶角的框中,并用虚线将该褶角框与代码所实现的操作相连。
图一:
此实线箭头表示, 继承
, 从一个非接口类的继承.
图二:
那条连线表示双向关联
:
看左边, Flight扮演assignedFights角色, 有0到1个Plane跟他关联(一个航班要么取消了没有飞机,要么只能对应一架飞机)
看右边, Plane扮演着assignedPlane角色, 有0到多个Flight跟他关联(一个飞机可以参与多个航班, 也可以停在仓库里面烂掉)
图三:
那条连线表示单向关联
:
基本的意义跟上面的是一样的, 唯一不同的是, 右边的类对左边的类是一无所知的.
图四:
那个大的包围的框叫软件包
, 名字为Account, 就一些可以归类的类包装起来.
图五:
如此虚线的箭头表示实现一个接口
.
图六:
水平的连线还是表示上面所说的关联, 但从关联连线中引伸出来的虚线, 这意味当Flight类的一个实例关联到 FrequentFlyer 类的一个实例时,将会产生 MileageCredit 类的一个实例
.
图七:
带菱形的箭头表示基本聚合, 由上图知道, Wheel类扮演wheels角色, 聚合4个到Car对象里面去,
空心的菱形表示Wheel对象并不随Car的创建而创建,销毁而销毁
.
图八:
意义和上面类似, 唯一不同的是, 实心菱形表示Department对象随Company对象的创建而创建,销毁而销毁
.
图九:
分享到:
相关推荐
UML类图符号简介.docx
**UML类图符号简介** 在软件开发过程中,UML(统一建模语言)是一种用于可视化和描述系统设计的强大工具,其中类图是UML中最基础的图表之一,用于描绘类与类之间的关系。以下是对UML类图中各种符号的详细解释: 1....
"UML类图符号解析" UML类图符号是 Unified Modeling Language(统一建模语言)的核心组成部分之一,用于描述系统中的类和对象之间的关系。类图是UML中的静态结构模型,用于描述系统中的类、对象、接口、继承、实现...
UML类图符号总结,包括UML类图符号的使用与定义,供大家一起共同分享学习。
下面我们将详细解释UML类图中各符号的含义。 1. 类(Class):在UML类图中,类通常用三层矩形表示。第一层写类的名称,如果类是抽象的,则名称以斜体显示。第二层列出类的属性(fields)和字段,第三层列出类的方法...
UML类图符号 UML类图符号是Unified Modeling Language(统一建模语言)中的一个重要组成部分,它们用来描述类与类之间的关系。这些符号可以帮助开发人员更好地理解和设计软件系统。 类(Class) 在UML类图中,类...
在IT行业中,UML(统一建模语言)是一种标准的...学习这个案例,你可以了解如何将业务逻辑转化为UML类图,再将类图转换为实际的C++代码。这有助于提升你对面向对象编程的理解,同时也能掌握UML在软件工程中的实际应用。
综上所述,UML类图中的类是系统建模的关键元素,它们通过抽象类和具体类的区分来表达层次结构,通过主动类和非主动类来描述行为发起者和接收者。属性和操作则构成了类的核心特性,帮助我们理解和设计系统的结构和...
### UML类图关系详解 #### 一、引言 统一建模语言(Unified Modeling Language,简称UML)是一种广泛使用的图形化语言,用于软件工程的设计、开发和维护。其中,UML类图是用于描述系统中类的静态结构的重要组成...
### UML类图关系详解 #### 一、引言 UML(Unified Modeling Language,统一建模语言)是一种广泛应用于软件工程领域的图形化规范,用于描述软件系统的结构和行为。UML类图作为UML中的一种重要图表类型,主要用于...
在UML类图中,主要元素包括: 1. 类(Class):类是一个复杂的数据类型,包含数据(属性)和操作(方法)。在UML图中,类通常用三层矩形表示,第一层写类名,第二层列属性,第三层列方法。类的访问修饰符(public、...
通过“UML类图关系大全.doc”和“UML类图简介.doc”,你可以更详细地了解这些关系的图形表示、符号含义以及在实际设计中的应用。学习和熟练掌握这些关系对于理解和设计复杂的软件系统至关重要,因为它们有助于清晰地...
在UML类图中,每个类都有其自己的属性和方法,可以使用“-”、“+”和“#”符号来表示访问控制权限。 UML类图的应用非常广泛,包括软件设计、系统分析、项目管理等领域。通过UML类图,可以对系统的静态结构进行描述...
以下是对UML类图中各种元素的详细说明: 1. 类(Class): 类通常用矩形表示,包含三个主要区域。第一层是类名,抽象类的名称用斜体表示。第二层是类的属性(Fields)和特性(Attributes),它们描述了类的数据...
本文通过一个具体的UML类图例子,深入探讨类图中的各种关系和符号,以便更好地理解其在面向对象系统设计中的应用。 首先,让我们从最基本的类关系开始。在面向对象编程中,继承是实现代码复用和建立类层级结构的...
### 基于UML类图的类之间依赖关系图论问题研究 #### 摘要及背景介绍 本文探讨了UML(统一建模语言)类图中的类间依赖关系,并通过图论的方法对其进行深入分析。随着面向对象编程方法在软件开发领域的广泛应用,UML...
UML类图设计模式概述 UML类图是一种统一建模语言(Unified Modeling Language),用于描述软件系统的结构和行为。它是设计模式的核心组件之一,广泛应用于软件开发、系统设计和业务分析中。 类图的组成 类图是UML...
#### 二、UML类图简介 UML提供了多种图形符号用于描述面向对象系统的各个方面。本文主要关注UML类图(Class Diagrams),它主要用于描述系统中的类及其相互间的关系。类图的核心组成部分包括: 1. **类(Class)**...
### UML类图详解 #### 一、引言 统一建模语言(Unified Modeling Language,简称UML)是一种用于软件工程领域的图形化语言,旨在帮助软件开发者设计、构造和维护软件系统。其中,UML类图是UML中最常用且重要的组成...