这个uml关系可能有什么问题

时间:2017-12-01 21:19:01

标签: uml class-diagram

您好我正在尝试创建类图,但我不确定我的观点是否合适,您能否告诉我应该更改哪些内容,谢谢。

不确定也可能是关联? enter image description here

enter image description here

也许是关联?

enter image description here

1 个答案:

答案 0 :(得分:1)

我想我理解你的问题,虽然评论者试图向你解释,你却没有清楚地问过它。我相信你在询问你的课程之间应该使用什么类型的关联。

组合关联,您似乎部分理解,意味着组合关系中对象的生命周期取决于它所属的对象。

然后,您的第一张图表示您的火车由火车站组成,因此如果没有火车,则不再有任何火车站。这显然不是真的;其他列车可以停在同一站点。此外,您的火车可能会与一条路线相关联。对象,它将是多个停靠点的集合。我会让你详细说明。

您的下一张图表示列车(至少部分地)由乘客组成,因此如果列车被摧毁,则不再有乘客。但是乘客可以换乘火车并继续成为乘客,因此您不会在列车和乘客之间建立合成关系。乘客乘坐火车,火车可能有也可能没有乘客,所以你有一个简单的联系(没有任何类型的钻石)。

最后,您的上一张图表说可用路线由城市组成。这似乎是合理的。但是,还存在一个问题,即某个城市可能是不同路线的成员。如果是这样的话,最好说一个特定的城市"有#34;与之相关的一些路线。在这种情况下,城市端会有一颗白色钻石。当然,如果你这样做,你将不得不重新考虑你的distance_between属性。最好创建一个distance类,它本身与两个且只有两个城市对象相关联。