OO 编程 - 在自动售货机 UML 图中作为独立对象的平衡,为什么?

OO Programming - Balance as independent Object in vending machine UML diagram, Why?

你好,我正在尝试理解一个 UML 示例来表示自动售货机系统。在此示例中,有 3 类 CustomerItemBalance。这里的问题是为什么 Balance 被表示为独立的对象。我不明白为什么,因为我认为那应该是 Customer 属性。可以帮助我理解为什么吗?

谢谢。

因为它对建模域很重要。

这样想:属性和关联是一回事 (Association Class vs. Attribute),只是你的形象不同。

在同样的意义上,你可以有一个 class Image Customer 指向,或者 class String 关联 name会点。

但是,由于您正在为自动售货机状态建模,所以您关心谁(客户)使用哪些资源(余额)购买了什么(商品)。

p.s。 (与问题无关,但与模型相关):通常不要向模型添加访问器方法,它们是肤浅的,login/logout 听起来像概念重载