Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
UML-关联还是聚合关系?_Uml_Aggregation_Modeling - Fatal编程技术网

UML-关联还是聚合关系?

UML-关联还是聚合关系?,uml,aggregation,modeling,Uml,Aggregation,Modeling,当一个类持有另一个类的类型作为属性时,这种关系是什么-关联还是聚合 e、 g 持有一种城市等级作为属性的航班等级称为目的地——这是关联还是聚合?在这两种情况下,他们的关系名称是什么?航班-“到达”-城市 另一种情况: FlightBooking类将一种类型的BusinessClass类作为属性来显示它是一个business class FlightBooking-这是关联还是聚合 谢谢 想想术语——联想听起来更一般。可以这样说,“一个航班类别持有一种称为目的地的城市类别属性”——这是一种关联 拥

当一个类持有另一个类的类型作为属性时,这种关系是什么-关联还是聚合

e、 g

持有一种城市等级作为属性的航班等级称为目的地——这是关联还是聚合?在这两种情况下,他们的关系名称是什么?航班-“到达”-城市

另一种情况:

FlightBooking类将一种类型的BusinessClass类作为属性来显示它是一个business class FlightBooking-这是关联还是聚合


谢谢

想想术语——联想听起来更一般。可以这样说,“一个航班类别持有一种称为目的地的城市类别属性”——这是一种关联

拥有一种城市类型的飞行舱 类作为名为 目的地-这是一个关联吗 还是聚合


这取决于你想在你的程序中得到什么样的行为,但在大多数情况下,这应该是一种关联。当您删除航班对象(在内存中、数据库中等)时,您不希望目的地城市数据也被删除,或者您希望吗?一般的经验法则是:只要您希望a和B的生存期相同,就在a中使用B的聚合;只要生命周期应该解耦,就使用关联

@marcin,也许OP正在努力学习,这样他就有了一个词汇表,可以用来与他人交流共同的想法。为什么还要学习正确的单词呢?@Sam Holder:对我来说,这听起来像是家庭作业。我还觉得奇怪的是,当语义清晰时,人们会关心名称。最后,我认为UML不鼓励好的设计。@Marcin:UML不鼓励好的设计?也许你可以详细说明一下?@sfinie:UML鼓励关注数据模型(在许多方面都很好),但它几乎完全掩盖了方法的作用。您可以表示java风格的接口,但它并没有告诉您多少。关于方法所做的约束和假设的表示也很麻烦。可能重复