关联、聚合(Aggregation)以及组合(Composition)的区别


Posted in 面试题 onFebruary 29, 2012
涉及到UML中的一些概念:关联是表示两个类的一般性联系,比如“学生”和“老师”就是一种关联关系;聚合表示has-a的关系,是一种相对松散的关系,聚合类不需要对被聚合类负责,用空的菱形表示聚合关系

从实现的角度讲,聚合可以表示为:
class A {…} class B { A* a; …..}
而组合表示contains-a的关系,关联性强于聚合:组合类与被组合类有相同的生命周期,组合类要对被组合类负责,采用实心的菱形表示组合关系

实现的形式是:
class A{…} class B{ A a; …}

Tags in this post...

面试题 相关文章推荐
Java面试中常遇到的问题,也是需要注意的几点
Aug 30 面试题
求高于平均分的学生学号及成绩
Sep 01 面试题
统计每一学生的平均成绩
Jun 06 面试题
Oracle性能调优原则
May 03 面试题
.NET里面如何取得当前的屏幕分辨率
Dec 06 面试题
网络通讯中,端口有什么含义,端口的取值范围
Nov 23 面试题
params有什么用
Mar 01 面试题
C#怎么让一个窗口居中显示?
Oct 20 面试题
初始化了一个没有run()方法的线程类,是否会出错?
Mar 27 面试题
编程用JAVA解析XML的方式
Jul 07 面试题
什么是servlet
May 08 面试题
Java软件工程师综合面试题笔试题
Sep 08 面试题
链表面试题-一个链表的结点结构
May 04 #面试题
计算 s=(x*y)1/2,用两个宏定义来实现
Aug 11 #面试题
计算s=f(f(-1.4))的值
May 06 #面试题
求两个数的乘积和商数,该作用由宏定义来实现
Mar 13 #面试题
请写出 float x 与"零值"比较的 if 语句
Jan 04 #面试题
求∏的近似值,直到最后一项的绝对值小于指定的数
Feb 12 #面试题
请写出 BOOL flag 与"零值"比较的 if 语句
Feb 29 #面试题
You might like
php中常用的预定义变量小结
2012/05/09 PHP
php获取本周开始日期和结束日期的方法
2015/03/09 PHP
PHP实现数组转JSon和JSon转数组的方法示例
2018/06/14 PHP
PHP连接及操作PostgreSQL数据库的方法详解
2019/01/30 PHP
在Laravel中实现使用AJAX动态刷新部分页面
2019/10/15 PHP
php判断某个方法是否存在函数function_exists (),method_exists()与is_callable()区别与用法解析
2020/04/20 PHP
提高javascript效率 一次判断,而不要次次判断
2012/03/30 Javascript
js 距离某一时间点时间是多少实现代码
2013/10/14 Javascript
js+css 实现遮罩居中弹出层(随浏览器窗口滚动条滚动)
2013/12/11 Javascript
jquery复选框全选/取消示例
2013/12/30 Javascript
php的文件上传入门教程(实例讲解)
2014/04/10 Javascript
jQuery表单域选择器用法分析
2015/02/10 Javascript
浅谈jquery事件处理
2015/04/24 Javascript
JavaScript仿静态分页实现方法
2015/08/04 Javascript
浅谈String.valueOf()方法的使用
2016/06/06 Javascript
jQuery实现可以编辑的表格实例详解【附demo源码下载】
2016/07/09 Javascript
JavaScript将base64图片转换成formData并通过AJAX提交的实现方法
2016/10/24 Javascript
利用Javascript裁剪图片并存储的简单实现
2017/03/13 Javascript
Vue.js学习教程之列表渲染详解
2017/05/17 Javascript
基于代数方程库Algebra.js解二元一次方程功能示例
2017/06/09 Javascript
React Native模块之Permissions权限申请的实例相机
2017/09/28 Javascript
微信小程序实时聊天WebSocket
2018/07/05 Javascript
vuex的module模块用法示例
2018/11/12 Javascript
webpack打包多页面的方法
2018/11/30 Javascript
微信小程序开发实现的IP地址查询功能示例
2019/03/28 Javascript
p5.js实现故宫橘猫赏秋图动画
2019/10/23 Javascript
JS document对象简单用法完整示例
2020/01/14 Javascript
vue vant中picker组件的使用
2020/11/03 Javascript
详解node.js创建一个web服务器(Server)的详细步骤
2021/01/15 Javascript
[01:59]DOTA2首部纪录片《Free to play》预告片
2014/03/12 DOTA
浅谈pyhton学习中出现的各种问题(新手必看)
2017/05/17 Python
python numpy 部分排序 寻找最大的前几个数的方法
2018/06/27 Python
基于HTML5 的人脸识别活体认证的实现方法
2016/06/22 HTML / CSS
水电施工员岗位职责
2015/04/11 职场文书
十二生肖观后感
2015/06/12 职场文书
文案策划岗位个人自我评价(范文)
2019/08/08 职场文书