java - 这是聚合还是组合关联?

标签 java uml

我有一个 Album 类和一个 Track 类。轨道可以独立于专辑而存在,但专辑不能没有任何轨道而存在。

我认为这是一个聚合,因为当专辑被销毁时轨道不会被销毁。但是属于特定专辑的特定轨道将随专辑一起销毁...所以有人可以更清楚地说明这一点吗?

此外,这是家庭作业,但这不是真正的问题。我们正在做一个巨大的建模练习,这是一个单一的关联链接。

最佳答案

在非家庭作业的世界中,这是用例决定设计的地方。

如果轨道是独立的实体,而专辑是轨道的集合,那很好。然而,在这样的系统下,删除专辑并不意味着删除轨道。

...除非您有“删除专辑中的轨道”选项

...或者您决定仅当所有专辑不再包含某首轨道时才将其删除。

...并且您有一个无法删除的“未分类轨道”专辑。

在您决定数据模型支持您可能想要支持的确切使用模式之前,听起来您需要确定您打算如何使用您的应用程序。

关于java - 这是聚合还是组合关联?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4371206/

相关文章:

Java - 使用扫描仪读取同一行上的多个项目

java - Java 强制转换会引入开销吗?为什么?

java - 多catch异常处理和多态性

java - 在 JPanel Netbeans 上获取单击目标

uml - 流程模型与事件图

uml - graphviz:用粗体标题记录节点

uml - 如何在事件图中表示事件的重复

UML:同一组件在两个不同的地方

class - 此 UML 对象图是否允许用于此类图?

java - 多次使用 Box 变量