稍微温习了一下UML类图的画法。太久不画,表示类之间关系的各种箭头已经忘了哪个是哪个。
参考资料:http://www.uml.org.cn/oobject/200910191.asp

 

关联 (association):直线
依赖 (dependency):带箭头的虚线
继承 / 泛化 (generalization) :带三角箭头的实线
实现 (realization):带三角箭头的虚线
聚合 (aggregation):带空心菱形的虚线
组合 (composition):带实心菱形的虚线

其中聚合和组合的区别,别人的说法是:聚合——如果整个单元消失了,被聚合的类仍然作为它本身存在下去;组合——如果整个单元消失了,被组合的类也一同消失。

有人举例说明:聚合,就是一台电脑和它各部件的关系。组合,就是一个人和这个人的各个器官的关系。

不过觉得有些偏差。人死了,器官仍然可以移植给别人用吧?虽然会有排斥反应,器官的DNA也是死去那个人唯一的。

从实际编程考虑的话,个人觉得,聚合用于这样的场合——有一个类,它引用了一个其他的类作为它的属性;组合——有一个类,它里面写了内部类。

这么理解可能片面了。没理解到根上。不过应该还算说得通吧。 

相关文章:

  • 2021-07-14
  • 2021-10-17
  • 2022-12-23
  • 2021-07-06
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-11-12
  • 2022-01-15
  • 2022-01-19
  • 2021-11-10
相关资源
相似解决方案