Java类图中类与类的关系
1)一般化关系(继承)
上图中左边的表示继承,右边的表示实现接口。
2) 关联关系
关联关系表示的是类与类之间的联接,也就说说,让一个类知道另外一个类的属性和方法,他们之间可以是双向的,也可以使双向的。通常情况下,不鼓励使用双向关联
在类图中双向的可以用两个箭头或者不用箭头,如下图老师和学生的关系
【代码体现】:成员变量
3) 聚合关系
聚合关系是关联关系的一种,是一种强的关联关系,代表着整体和个体的关系,且部分可以离开整体而单独存在。如车和轮胎是整体和部分的关系,轮胎离开车仍然可以存在。
关联和聚合在语法上无法区分,必须考察具体的逻辑关系。
【代码体现】:成员变量
4)组合关系(又叫合成关系)
组合关系也是关联关系的一种,是比聚合关系还要强的关联关系,他也代表是整体与部分的关系,但部分不能离开整体而单独存在。如公司和部门是整体和部分的关系,没有公司就不存在部门。它要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期。
【代码体现】:成员变量
5)依赖关系
依赖也是类与类之间的联接,但是他总是单向的,他表示一个类依赖于另一个类的定义。
【代码表现】:局部变量、方法的参数或者对静态方法的调用