UML中4种关系:依赖、关联、泛化和实现 【转】

前端之家收集整理的这篇文章主要介绍了UML中4种关系:依赖、关联、泛化和实现 【转】前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

UML中有4种关系:依赖、关联、泛化和实现。
(1)依赖(dependency)是两个事物间的语义关系,其中一个事物(独立事物)发生变化会影响另一个事物(依赖事物)的语义。在图形上,把一个依赖画成一条可能有方向的虚线。
(2)关联(association)是一种结构关系,它描述了一组链,链是对象之间的连接。聚集(aggregation)是一种特殊类型的关联,它描 述了整体和部分间的结构关系。关联和聚集的图形化表示如图1 O一1 3和图1 O一1 4所示。在关联上可以标注重复度(multiplicity)和角色(role)。
(3)泛化(generalization)是一种特殊/一般关系,特殊元素(子元素)的对象可替代一般元素(父元素)的对象,用这种方法,子元素共享了 父元素的结构和行为。在图形上,把一个泛化关系画成一条带有空心箭头的实线,它指向父元素,如图1 O一1 5所示。
(4)实现(realization)是类元之间的语义关系,其中一个类元指定了由另一个类元保证执行的契约。在两种地方要遇到实现关系:一种是在接口和 实现它们的类或构件之间;另一种是在用例和实现它们的协作之间。在图形上,把一个实现关系画成一条带有空心箭头的虚线。

这4种关系是U ML模型中可以包含的基本关系事物。它们也有变体,例如,依赖的变体有精化、跟踪、包含和延伸。

UML中泛化 依赖 关联 聚合 组合 实现

泛化(继承)

class A{

}

class B : A{

}

依赖:

class A{

public void Function(B b)

{}

}

class B {

}

关联

class A{

B b = new B();

}

class B {

}

聚合

class A{

B b = new B();

C c = new C();

}

class B {

}

class C {

}

组合

class A{

B b = new B();

C c = new C();

}

class B {

}

class C {

}

聚合和组合的区别:生命周期。

组合中,随着A类的生命周期结束,B,C也结束。必须在A类里面使用。

聚合中,随着A类的生命周期结束,B,C不一定结束。

猜你在找的设计模式相关文章