UML(5)UML表示类之间的关系-关联关系/三角还没没有总结完成

在软件系统中,类并不是孤立存在的,类与类之间存在各种关系,对于不同类型的关系,UML提供不同的表示方式。

1 关联关系

关联关系是类与类之间最常用的一种关系,它是一种结构化关系,用于表示一类对象与另一类对象之间有联系,如汽车和轮胎、师傅和土地、班级和学生等。

在UML类图中,用实线连接有关联关系的对象所对应的类,

在使用Java、C#和C++等编程语言实现关联关系时,通常将一个类的对象作为另一个类的成员变量。

     在UML中,关联关系通常又包含如下几种形式

默认情况下,关联是双向的。

a双向关联

例如,顾客(Customer)购买商品(Product)并拥有商品,反之,卖出的商品总有某个顾客与之相关联。

因此,Customer类和Product类之间具有双向关联关系

UML(5)UML表示类之间的关系-关联关系/三角还没没有总结完成

b单向关联

类的关联关系也可以是单向的,在UML中单向关联用带箭头的实线表示。

例如,顾客(Customer)拥有地址(Address),则Customer类与Address类具有单向关联关系。

UML(5)UML表示类之间的关系-关联关系/三角还没没有总结完成

c自关联  

在系统中可能会存在一些类的属性对象类型为该类本身,这种特殊的关联关系称为自关联。

例如,一个节点类(Node)的成员又是节点 Node 类型的对象

UML(5)UML表示类之间的关系-关联关系/三角还没没有总结完成

在使用类图表示关联关系时可以在关联线上标注,表示两者之间关系的动词。