一、组合与聚合(Aggregation)的区别和联系
由其他的对象组合而成的对象叫做聚合对象。 首先,都是整体与部分的关系,组合的关系更强一点,对组合关系来说,如果失去部分,整体也将不存在了。 对于聚合,是当父聚合对象不存在时,组成聚合对象部分可以存在。而组成则是一种强聚合,在组成关系中,当父聚合对象不存在时,它的组成对象不能存在。
代码实现上来看: 组合:在整体的构造器中实例化部分,这个部分不能被其他实例共享。整体与部分的生命周期是同步的。而聚合关系的部分,可以在构造器中通过参数传递的形式进行初始化。
从数据库的层面上看: 组合关系:需要级联删除,而聚合关系不需要。 需要强制初始化代表聚合对象的组成对象。
聚合是关联关系的一种,是较强的关联关系,强调的是整体与部分之间的关系。与关联关系一样,聚合关系也是通过实例变量来实现这样关系的。
聚合与关联的区别:关联关系所涉及的两个对象是处在同一个层次上的。聚合关系涉及的两个对象处于不平等的层次上,一个代表整体,一个代表部分。对于具有聚集关系(尤其是强聚集关系)的两个对象,整体对象会制约它的组成对象的生命周期。
二、关联关系
关联关系是使用实例变量来实现。
对于两个相对独立的对象,当一个对象的实例与另一个对象的一些特定实例存在固定的对应关系时,这两个对象之间为关联关系。
三、依赖关系
依赖关系表现在局部变量,方法的参数,以及对静态方法的调用。
对于两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一个对象的服务时,这两个对象之间主要体现为依赖关系。
四、泛化关系
表示类与类之间的继承关系,接口与接口之间的继承关系,或类对接口的实现关系。一般化的关系是从子类指向父类的,与继承或实现的方法相反。
分享到:
相关推荐
UML中类与类的关系.pdf
UML java 图示6种类关系,帮忙理解uml的基本概念。
类与类关系的UML图与代码表现.doc 类与类关系的UML图与代码表现.doc
本文向大家简单介绍一下UML类图关系,UML定义的关系主要有六种:依赖、类属、关联、实现、聚合和组合。希望本文的介绍对你的学习有所帮助。
uml 实验类的关系
UML类图与类的关系详解,UML类图与类的关系详解,UML类图与类的关系详解
UML类与类的关系详细说明,还有一些相关的内容供参考
类间关系有很多种,在大的类别上可以分为两种:纵向关系、横向关系。 纵向关系就是继承关系,它的概念非常明确,也成为OO的三个重要特征之一,这里不过多的讨论。
自-面向对象UML中类关系-.docx
UML类关系-依赖,关联,聚合和组合 这几种关系很容易混淆,一个总结文档。
在这篇文章中我们要将下面一个在MFC程序中随处可以见到类用UML图表现出来.classCGraphicObject{ CRectm_rectBound;public: BOOLSetRect(CRectrect); CRectGetRect();};创建类图在模型资源管理器中选择[Static...
uml
一、Java中什么是上转型对象, 上转型对象如何体现多态?...五、看图回答问题:下图中类的名字是什么?类中有哪些行为(方法),他们的可见性是什么? 该类是什么类型的类,这种类型的类作用是什么?(10分)
关系是事物之间的联系。类之间有4种重要的关系:依赖、泛化、关联和实现。这些关系都可以映射到代码里。
基于UML类图的类之间依赖关系图论问题研究.pdf
uml客户管理系统课设,基本功能用例图,状态图都画了,当时做的挺用心的
UML类图的各种关系图示,以及Java代码(表格形式)。
解释UML类的关系,帮助了解UML的相关知识。