1、泛化关系(Generalization)针对继承类使用(extends)
“is-a”
public class A1 { } public class B1 extends A1 { }
2、实现关系(realization)针对接口使用(implements)
3、关联关系(Associate):在一个类中有另一个类生成的全局变量(
使用类指向被关联类)
对象间的一种依赖关系,比如客户类与订单类的关系,要使用类的属性表达。
public class A2 { } public class B2 { private A2 a2; }
4、依赖关系(dependency);是一种弱关联
满足3个条件:
-
局部变量
-
作为方法参数(构造函数)
-
静态方法调用
依赖是几种关系中最弱的一种关系,通常,使用类库就是其中的一种关系。
public class A3 { } public class B3 { public Fun(A3 a3) { a3. //静态方法调用 } }
5、组合关系(composition):
同生共死 大雁与其翅膀必为同生共死关系
“is a part of”
public class A4 { } public class B4 { private A4 a4; public B4() { a4 = new A4(); } }
6、聚合关系(Aggregation):
不同生共死,雁群少了一只大雁可以,一只大雁脱离雁群也可以。
“is a member of”
public class A5 { } public class B5 { public A5 a5; public B5(A5 a) { a5=a; } }
聚合与组合都表示了整体和部分的关系。组合的程度比聚合高,当整体对象消失时,部分对象也随之消失,则属于组合关系,当整体对象消失而部分对象依然可以存在并继续被使用时,则属于聚合关系。