UML四大关系篇

来源:互联网 发布:西门子软件质量规范 编辑:程序博客网 时间:2024/05/17 02:10

UML中的四类关系:关联Association、依赖Dependency、泛化Generalization、实现Realization。


一、依赖(Dependency)

    使用关系:即一个类的实现需要使用另一个类的方法或者属性。如植物和水,植物的生存需要水,两者之间存在“使用”关系。

     符号:带箭头的虚线,指向被使用者。

     代码表现:局部变量、方法的参数或者对静态方法的调用。


二、关联(Association)

      拥有关系:它使一个类知道另一个类的属性和方法。双向关联无箭头,单向关联右箭头。如,雇员和公司之间是互相知道的关系,课程需要被学生所知道。

     符号:带普通箭头或实心三角形箭头的实心线,指向被拥有者。

    聚合(Aggregation):部分可以离开整体而单独存在。如公司可以分为几个部门,每个部门可以独自经营内部活动。

        符号:带空心菱形的是实心线,菱形指向整体。

    组合(Composition):部分不能离开整体而单独存在。如门把手是门的一部分,但是没有门时,门把手的存在也就没必要了。

        符号:带实心菱形的实线,菱形指向整体。


三、泛化(Generalization)

  继承关系:表示一般与特殊的关系,子类泛化出父类,而父类特化出的子类拥有父类所有的属性和方法。
   符号:带空心三角箭头的实线,箭头指向父类。

四、实现(Realization)

    类与接口的关系:表示类是接口所有特征和行为的实现。类目之间的予以关系,在该关系中一个类目描述了另一个类目保证实现的合约。如定义一个行为是“跳舞”,而“人”实现了“跳舞”这个动作。

    符号:带空心三角箭头的虚线,箭头指向接口(Ibrush)。