【发布时间】:2018-12-21 16:35:01
【问题描述】:
我对以下类图有疑问。 https://www.bilder-upload.eu/bild-3b1169-1545377131.png.html
在练习中,我们在 2 个类之间建立了关联。例如Person --- Residence 具有不同的多重性,单向和无方向等。该图像在我们的讲座中显示为最后。图像上写着“有了这个(箭头),实现就很清楚了”。但对我来说,这并不是微不足道的。我们以前从未有过这种实现的例子。中间的类“拥有”让我很难。
我尝试实现它,但我的实现没有意义。如果“拥有”类不存在,我将能够实现它。我会在 Person 中为多辆汽车使用容器类型(链接列表)。并在车内供多人使用。每个类都有一个 getter 方法(Collection)和添加/删除方法(双向)。我会提供 2 个不同的 Car 构造函数。 Car(String color, int speed, Person owner) 和 Car(String color, int speed, LinkedList 所有者。在第一个中,我将 Person 添加到 LinkedList,在第二个中,我将 LinkedList 所有者的所有元素添加到 LinkedList对象。还有一些更琐碎的代码。但是对于上面的这张图片我不知道,希望你能帮助我。
PS:如果你能给我一个链接,我也会很高兴,其中解释了关联、组合、泛化和 UML 类图的实现。我认为我们的讲座内容并不丰富,也没有详细解释。 :(
【问题讨论】:
-
让我解释一下这个问题。要创建汽车,我至少需要拥有 1 个(拥有日期、人员、汽车的所有权对象)。要创建 1 个拥有者,我需要 1 辆汽车。但是我应该如何放置 Car obj。如果相同的 Car obj 在它的构造函数中。需要创建一个拥有的 obj。那是我的问题:(
-
我认为您混淆了与作文的关联。您不需要 Car 或 Owns 来创建 Person(汽车也是如此)。它们是独立的类,不需要彼此存在。关联只显示两个类是如何关联的。
-
好的,非常感谢。我不知道这些概念的名称。现在事情开始变得有意义了。 ^^
标签: java associations