本文来源于转载,原文:原文
1.类图的定义:
类图描述系统中类的静态结构.不仅定义系统中的类,表示类之间的关系。如关联、依赖、聚合、泛化、实现等,也包括类的内部结构(类的属性操作)
类图是以类为中心来组织的,类图中其他元素或属于某个类或与类相关联
![](data:image/png;base64,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)
必须知道的符号:
![](data:image/png;base64,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)
关系表示就在下面了...
在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)
1. 泛化(Generalization)
【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为。例如:老虎是动物的一种,即有老虎的特性也有动物的共性。
【箭头指向】:带三角箭头的实线,箭头指向父类
2. 实现(Realization)
【实现关系】:是一种类与接口的关系,表示类是接口所有特征和行为的实现.
【箭头指向】:带三角箭头的虚线,箭头指向接口
3. 关联(Association)
【关联关系】:是一种拥有的关系,它使一个类知道另一个类的属性和方法;如:老师与学生,丈夫与妻子关联可以是双向的,也可以是单向的。双向的关联可以有两个箭头或者没有箭头,单向的关联有一个箭头。
【代码体现】:成员变量
【箭头及指向】:带普通箭头的实心线,指向被拥有者
上图中,老师与学生是双向关联,老师有多名学生,学生也可能有多名老师。但学生与某课程间的关系为单向关联,一名学生可能要上多门课程,课程是个抽象的东西他不拥有学生。
下图为自身关联:
4. 聚合(Aggregation)
【聚合关系】:是整体与部分的关系,且部分可以离开整体而单独存在。如车和轮胎是整体和部分的关系,轮胎离开车仍然可以存在。
聚合关系是关联关系的一种,是强的关联关系;关联和聚合在语法上无法区分,必须考察具体的逻辑关系。
【代码体现】:成员变量
【箭头及指向】:带空心菱形的实心线,菱形指向整体
5. 组合(Composition)
【组合关系】:是整体与部分的关系,但部分不能离开整体而单独存在。如公司和部门是整体和部分的关系,没有公司就不存在部门。
组合关系是关联关系的一种,是比聚合关系还要强的关系,它要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期。
【代码体现】:成员变量
【箭头及指向】:带实心菱形的实线,菱形指向整体
6. 依赖(Dependency)
【依赖关系】:是一种使用的关系,即一个类的实现需要另一个类的协助,所以要尽量不使用双向的互相依赖.
【代码表现】:局部变量、方法的参数或者对静态方法的调用
【箭头及指向】:带箭头的虚线,指向被使用者
各种关系的强弱顺序:
泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖
下面这张UML图,比较形象地展示了各种类图关系: