首页 > 解决方案 > 对于类图,让一个 A 类存储一个 B 类的 ArrayList 并由 C 类修改是否符合约定?

问题描述

简化的场景是您有可以进行预订的客户,并且您有可以与这些预订进行交互的经理。除了“客户”和“经理”类之外,还有一个代表每个预订的“预订”类。

是否有一个类“Bookings”专门用于存储“Booking”的所有对象的 ArrayList 并具有任何“经理”能够与这些“Booking”对象交互的操作(例如添加、删除、修改和列出)使用?

所描述场景的示意图

在约定方面,我不确定 Manager 类如何适应场景。同样未显示的是,Manager 是作为完整场景的一部分的“Staff”类的子级(此处未描述)。

标签: umlsoftware-designclass-diagram

解决方案


是否有一个类“Bookings”专门用于存储“Booking”的所有对象的 ArrayList 并具有任何“经理”能够与这些“Booking”对象交互的操作(例如添加、删除、修改和列出)使用?

可见Bookings只是 Bookings 的一个集合你不需要一个特定的类,集合本身就存在

对于类图,是否符合约定让类 A 存储类 B 的 ArrayList 可由类 C 修改

如果没有Bookings类,我们就没有 A、B 和 C,无论如何要在 UML 的上下文中回答这个问题,没有什么反对,也不鼓励这一点。我可以独立于 UML 说,而集合由 A 拥有,C 可以修改它的事实可能是危险的,而无需警告 A 或要求 A 自己做

我不确定 Manager 类如何适应场景

Manager可以是拥有Booking集合的类

在此处输入图像描述


推荐阅读