UML图表示类之间的关系

一、泛化(Generanization)

图:

泛化简单的说就是继承关系,在java中就是extend。表示一般与特殊的关系。如鸭子是鸟的一种,即有鸭子的特性也有鸟的共性。用带空心的三角箭头的实线指向父类。

二、接口与实现

图:

这种关系其实就是java里面的implements,是类与接口的关系。有两种表示(因为接口有两种表示方法)。

1.用带空心三角箭头的虚线,箭头指向接口。

2.或者直线连接圆圈,圆圈表示接口。

三、依赖(Dependency)

图:

 在java中用import表示,如这个类有依赖到哪个类。可以是方法参数或者方法里面的代码。用带箭头的虚线指向所要依赖的类。

是一种使用的关系。即一个类的实现需要另一个类的协助。所以尽量不使用双向的互相依赖。

四、关联(association)

图:

关联是一种拥有关系。他使一个类知道另一个类的属性和方法。在java中体现就是成员变量。如老师和学生,学生和课程。关联可以是双向的,也可以是单向的。单向的用

带箭头的实线指向被拥有者。双向的箭头去掉,用一条线连接。

五、聚合(Aggregation)

图:

是整体与部分的关系。部分离开整体后仍然可以存在。如轮胎离开车后仍然可以存在。在java中的体现也是成员变量。用一个带空心菱形的实线,指向整体。

六、组合(Composition)

图:

是整体与部分的关系。但是部分离开整体不可以单独存在。如人和手是不可分离的。表现形式也是成员变量。用一个带实心菱形的实线,指向整体。

原文地址:https://www.cnblogs.com/chenmz1995/p/12310834.html