大胖的部落格

Just a note

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  112 随笔 :: 0 文章 :: 3 评论 :: 0 Trackbacks
1、依赖关系(Dependency)
类与类之间的连接,表示一个类依赖于另外一个类的定义;依赖关系仅仅描述了类与类之间的一种使用与被使用的关系。A类使用B类,则说明A类依赖于B类,这种使用关系是具有偶然性的、临时性的、非常弱的,但是B类的变化会影响到A。
体现为局部变量、函数的参数或者是对静态方法的调用。



2、关联关系(Association)
关联关系使一个类知道另外一个类的属性和方法,是一种强依赖关系,不存在依赖关系的偶然性、关系也不是临时性的,一般是长期性的,而且双方的关系一般是平等的。关联可以是单向、双向的;可以是一对一、一对多、多对多。
关联关系是通过成员变量来实现的。例如下图Subject是Proxy的成员变量。


3、聚合关系(Aggregation)
体现的是整体与部分、拥有的关系,即has-a的关系,此时整体与部分之间是可分离的,他们可以具有各自的生命周期,部分可以属于多个整体对象,也可以为多个整体对象共享。
聚合关系也是通过成员变量来实现的。


4、组合关系(Composition)
体现的是一种contains-a的关系,这种关系比聚合更强,同样体现整体与部分间的关系,但此时整体与部分是不可分的,整体的生命周期结束也就意味着部分的生命周期结束。组合关系不能共享
组合关系是通过成员变量来实现的



5、泛化关系(Generalization) 
一个类继承另外的一个类的功能,也就是通常所说的类的继承关系。
泛化关系通过类的继承来实现的。



6、实现关系(Realization)
指的是一个class类实现interface接口的功能。
实现关系通过类实现接口来实现。

 

 

posted on 2009-06-16 11:32 大胖 阅读(500) 评论(0)  编辑 收藏 引用 所属分类: UML

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理