之间的关联下面是我的问题,一个很简单的例子:UML:专业类
http://img19.imageshack.us/img19/3575/workertool.png
(我不能在这里张贴的图片,因为我是新用户)
这两个类的源代码如下所示:
public abstract class Worker{
private Tool myTool;
}
public class ABCWorker extends Worker{
public ABCWorker(){
myTool = new ABCTool();
}
public work(){
tool = (ABCTool) myTool;
//use tool to do some work
}
}
如何在UML中正确建模?在我看来,只有三种可能性:
1)我在示例中的做法。然而,这是错误的,因为它表示ABCWorker可以使用任何工具。但是,它只能使用ABCTool。
2)在ABCWorker和ABCTool之间建立第二个关联。显然是错误的,因为这意味着ABCWorker使用两个工具,一个ABCTool和一个通用工具。
3)仅在ABCWorker和ABCTool之间建立一个关联。也是错误的,因为它省略了Worker和Tool之间的关系。
那么我该怎么做呢?
我认为类图是更适合我在做什么。我在讨论论文时遇到了这个问题,所以如果这真的不能在类图中显示出来,我想我可以放弃我在示例中做的事情,并在文本中说明ABCWorker将始终使用一个ABCTool。 – aheld 2012-03-19 11:07:11
是的,唯一的解决方案是使用评论。但是,这是如果它不使用另一个图。所以根据这个重要性,创建一个新的图表,或者只是评论一下。 – squelos 2012-03-19 11:18:15