UML四大关系篇
UML中的四类关系:关联Association、依赖Dependency、泛化Generalization、实现Realization。
一、依赖(Dependency)
使用关系:即一个类的实现需要使用另一个类的方法或者属性。如植物和水,植物的生存需要水,两者之间存在“使用”关系。
符号:带箭头的虚线,指向被使用者。
代码表现:局部变量、方法的参数或者对静态方法的调用。
二、关联(Association)
拥有关系:它使一个类知道另一个类的属性和方法。双向关联无箭头,单向关联右箭头。如,雇员和公司之间是互相知道的关系,课程需要被学生所知道。
符号:带普通箭头或实心三角形箭头的实心线,指向被拥有者。
聚合(Aggregation):部分可以离开整体而单独存在。如公司可以分为几个部门,每个部门可以独自经营内部活动。
符号:带空心菱形的是实心线,菱形指向整体。
组合(Composition):部分不能离开整体而单独存在。如门把手是门的一部分,但是没有门时,门把手的存在也就没必要了。
符号:带实心菱形的实线,菱形指向整体。
三、泛化(Generalization)
继承关系:表示一般与特殊的关系,子类泛化出父类,而父类特化出的子类拥有父类所有的属性和方法。
符号:带空心三角箭头的实线,箭头指向父类。
四、实现(Realization)
类与接口的关系:表示类是接口所有特征和行为的实现。类目之间的予以关系,在该关系中一个类目描述了另一个类目保证实现的合约。如定义一个行为是“跳舞”,而“人”实现了“跳舞”这个动作。
符号:带空心三角箭头的虚线,箭头指向接口(Ibrush)。