JAVA好学——关联、聚合、组合

一、关联
关联是一种常见的二元关系,描述两个类之间的活动,比如,“我”拿“笔”写字是Me类和Pen类之间的一种关联。
被关联类B以类属性的形式出现在关联类A中,或者关联类A中引用了一个类型为被关联类B的全局变量,就叫做关联。
在这里插入图片描述

二、聚合
当一个类的实例作为另一个类的属性,称之为“ 对象聚合 ”。
假设 B 类中的实例 b 作为 A 类的一个属性,在创建 A 类的时候并不会同步创建 B 类对象,当且仅当外部对象传入时才创建,换句话说,B 类对象并不是由 A 类对象的创建的。 因此,A 类与 B 类之间并不是“命运共同体”的关系,而是一种“亲戚”关系,B 类不会因为 A 类的消亡而消亡。
由此可见,聚合中整体与部分的关系是一种较为松散的关系。

三、组合

当一个类的实例成为另一个类的成员变量,表示两个类之间存在着一种“ has a ”的关系。
假设 B 类中的实例 b 作为 A 类的一个成员变量,在创建 A 类的时候 B 类对象同步产生,故 B 类对象是由 A 类对象唯一创建的。因此,A 类与 B 类之间是一种“人与心脏”的紧密关系,两者同时产生,同时消亡。
由此可见,聚合中整体与部分的关系是一种即为紧密的关系。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值