1

这是关于用户和用户类型的关系。

我有两个类 User 和 UserType 用户有 UserID、UserName、UserTypeID UserType 为:TypeID、TypeName

一个用户只能有一个用户类型(TypeID1/TypeID2/TypeID3)

什么可以用 UML 类图表示法来表示?是关联还是组合还是聚合?

此图将 Car 和 car type 作为 Association http://www.jetbrains.com/idea/features/screenshots/80/uml2.png

此图具有插件和插件类型作为组合 http://indico-software.org/raw-attachment/wiki/Dev/Technical/PluginSystem/Plugin%20System%20class%20diagram.png

4

2 回答 2

3

像这样的东西?
在此处输入图像描述

或者像这样
在此处输入图像描述

它取决于伙伴,当用户类型本身执行某些功能时,第一个解决方案很有用,换句话说,它是一个类(成员),而第二个解决方案仅在用户类型有一些常量时才有用。

于 2013-10-24T09:13:05.373 回答
2

为了知道如何在关联、组合或聚合之间进行选择,您只需回答这两个问题。1)一个是另一个的一部分?是 => 组合或聚合,否 => 关联。2)如果您“删除”容器,容器是否仍然存在?是 => 聚合,否 => 组合。

因此,当我了解您的模型时,您应该为 User 和 UserType 之间的关联建模。另一种解决方案是使用 UserType 作为类型对 User 上的属性进行建模。

于 2013-10-24T07:59:01.867 回答