2

在下图中,“Copy”类和“Book”类显示了一个聚合(Book有一个Copy)。所有其他类都是“复制”类的子类。现在,假设有一个Member类,它必须访问“Copy”类的“Lending”和“Borrow”子类。' ' 类唯一Member应该知道的是“accessionNumber”。

如果我们从代码的角度考虑这一点,我的“ Book”类包含一个“”数组Copy

在此处输入图像描述

我如何知道某本书的入藏号?

假设我需要copies数组中第三本书的“accessionNumber”。但是数组在类中,从类Book到类没有连接。BookCopy

如果我们创建一个返回连接,会不会像“Copy has a Book”,或者更有意义的是,像“Subject has Student”(以著名的聚合示例“Student has a Subject”为例)?

4

1 回答 1

1

如果我们创建一个连接回来,会不会像“复制有一本书”

不,它不会。简单的依赖关系(例如 C++ 中的引用或非拥有指针)不是您从聚合或组合的更强关联中获得的“拥有”或“拥有”关系。这听起来像你想要的。

于 2013-01-24T16:37:22.793 回答