java 组合 聚合_关联,组合和聚合-用Java实现

我对关联,聚合和组成有些困惑.即使大量的网站和论坛讨论了此主题,但在阅读其中一些内容后,我变得更加困惑.

我想知道以下是否正确:

1.)聚集-如果整体被破坏,将存在.例如,一个引擎可以有或没有汽车.

2.)合成-如果对象被破坏,将不存在.例如,没有房子,房间就不可能存在.

3.)关联-我不确定在什么情况下应该使用它.有人可以对此发表评论.

在编写用于聚合,组合和关联的Java代码时

4.)汇总

Class Car {

private Engine engine;

public void setEngine(Engine engine){

this.engine=engine;

}

public Engine getEngine(){

return engine;

}

}

我认为,如果这是一个聚合关联,则应该定义访问器和变异器.这个对吗 ?

根据我对聚合的定义,我提到如果Car对象被破坏,则可以访问Engine.但是,我没有在上面的代码中看到这种现象.如果Car对象被破坏,将无法像car.getEngine()一样访问引擎.那么这是怎么发生的呢?

组成

Public House {

private Room room;

Public House (){

room = new Room (int noRooms, String nameOfHouse);

}

}

我认为,如果它是C0mposition,则不应有任何访问器更改程序功能.而对象室只能在构造函数内部创建.并且保存room对象的实例方法必须为Private?我对么 ?

注意:我再次谷歌搜索,并访问了许多网站/论坛,以消除我的疑惑.类似的问题在很多论坛上发布,但我对此感到更加困惑.有人可以帮我消除我的疑虑.谢谢!

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值