1.分类:
2.各个关系
- 继承关系:
继承关系也称泛化关系(Generalization),用于描述父类与子类之间的关系。父类又称作基类,子类又称作派生类。
继承关系中,子类继承父类的所有功能,父类所具有的属性、方法,子类应该都有。子类中除了与父类一致的信息以外,还包括额外的信息。
2.实现关系:
实现关系(Implementation),主要用来规定接口和实现类的关系。
接口(包括抽象类)是方法的集合,在实现关系中,类实现了接口,类中的方法实现了接口声明的所有方法。
3.组合关系:
组合关系(Composition):整体与部分的关系,但是整体与部分不可以分开。
组合关系表示类之间整体与部分的关系,整体和部分有一致的生存期。一旦整体对象不存在,部分对象也将不存在,是同生共死的关系。
4.聚合关系:
聚合关系(Aggregation):整体和部分的关系,整体与部分可以分开。
聚合关系也表示类之间整体与部分的关系,成员对象是整体对象的一部分,但是成员对象可以脱离整体对象独立存在。
5.关联关系:
关联关系(Association):表示一个类的属性保存了对另一个类的一个实例(或多个实例)的引用。
关联关系是类与类之间最常用的一种关系,表示一类对象与另一类对象之间有联系。组合、聚合也属于关联关系,只是关联关系的类间关系比其他两种要弱。
关联关系有四种:双向关联、单向关联、自关联、多重数关联。
6.依赖关系
依赖关系(Dependence):假设A类的变化引起了B类的变化,则说名B类依赖于A类。
大多数情况下,依赖关系体现在某个类的方法使用另一个类的对象作为参数。
依赖关系是一种“使用”关系,特定事物的改变有可能会影响到使用该事物的其他事物,在需要表示一个事物使用另一个事物时使用依赖关系。
3.关系强弱比较
继承>实现>组合>聚合>关联>依赖