永发信息网

java中的组合与聚合,区别。。。详细点

答案:3  悬赏:10  手机版
解决时间 2021-01-25 08:56
java中的组合与聚合,区别。。。详细点
最佳答案
组成就是强聚合,比如班级和学生间的关系应该是聚合,学生和学号的关系就应该是组成
班级、学生都是有独立意义的对象,但是学号要是没有学生就没什么意义了
组成要求整体和组成部分共存亡,他们的生命期相同,谁也离不开谁。
图上的时候聚合貌似是空心的零菱形,组成是实心的。
全部回答
聚合就是:表示两个对象之间是整体和部分的弱关系,部分的生命周期可以超越整体。如下:实例化Person,不一定要实例化Telephone。has a
public class Person{
private Telephone tel;
private Hand hand = new Hand();
.......
}
class Telephone{
......
}
组合:组合:表示两个对象之间是整体和部分的强关系,部分的生命周期不能超越整体,或者说不能脱离整体而存在。组合关系的“部分”,是不能在整体之间进行共享的。如人和手的关系:人是整体,手是部分。is a 的关系 。手不能脱离人。
public class hand{
......
}
聚合是关联关系的一种特例,他体现的是整体与部分 拥有的关系,即has-a的关系,此时整体与部分之间是可以分离的,他们可以具有各自的生命周期,部分可以属于多个整体对象,也可以为多个整体对象共享;比如计算机与CPU,公司与员工的关系;
组合也是关联关系的一种特例,他体现的也是一种contain-a的关系,这种关系比聚合更强,也称为强聚合,他同样体现整体与部分件的关系,但此时整体与部分是不可分的,整体的声明周期结束也就意味着部分的声明周期结束;比如你和你的大脑;
UML图表示不一样
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
发动机怠速时有哒哒哒的响声是什么问题
揭阳市五经富镇办理港澳通行证的地方在哪里?
上市公司发生的下列事项中,应当及时向国务院
幻颜国际地址在哪,我要去那里办事
chrome使用启动选项“--user-data-dir”后每
三菱MR-J2s-100B显示"RB"故障
请问手机突然出现这个,是硬盘烧了嘛?
对右边人体结构层次示意图的叙述中,错误的是
黑枸杞泡水为什么是紫色或者蓝色
温鑫阁休闲怎么去啊,我要去那办事
加拿大有多少面积
网页无法打开,总是显示加载中,是什么原因?
为什么自来水天天都没水呢,而且每天晚上都停
字谜九点是什么字
fate伊丽莎白巴托里本子
推荐资讯
我是山东省曹县朱洪庙乡任庄行政村人,我的问
感冒了就要吃药,多喝点水,这句话用海南话怎
为什么新注册的qq就显示关联前天qq了呢
一直线过点P(0,4),被圆x²+y²=25
求修仙,仙侠类BL小说 主受,,np
若线段AB为20CM,点线段ab=20cm,点p沿线段ab自
诺基亚638目前无法检查是否有可用的更新80072
还有那些电视剧是中韩合作的?类似灭罪师这种
兄弟洗车地址在什么地方,想过去办事
男友梦见离开我
卡罗拉原车导航好用吗
一次函数开始听不懂了
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?