类之间的聚合和组合关系

本文关键字:组合 关系 之间 | 更新日期: 2023-09-27 18:20:20

我正在为以下场景绘制类图:

荧光灯=底座、盖子、开关、镇流器接线、扭转、启动器、安装。

白炽灯=底座、盖子、开关、接线插座。

但不幸的是,我是一名国际学生,不知道这些东西到底是什么。

我知道我应该画一个SuperClass - lamp;来自Lamp的白炽Inherit。我也知道灯和东西(如底座、盖子和启动器等)之间的关系应该是聚合或组合,因为它们是灯的一部分。

但我不知道哪一部分可以与其他Lamp共享(聚合),哪一部分只能由一个Lamp拥有(合成)。

类之间的聚合和组合关系

我认为特定于灯的attributes like-cover,wiring socket,size etc. be a part of composition和其余是所有灯都通用的,应该在aggregation ex-wiring ballast,switch中。

您似乎对聚合或组合之间的区别有点困惑。如果对象具有相同的寿命,则它们是复合的(汽车=发动机+车身)。如果它们有不同的寿命,可以合法添加或删除,(Taxi=Car+Driver)它们是聚合的。因此,你需要考虑问题领域的范围,即你从谁的角度来看待这个问题。电工对消费者。