3

在讨论我对这个问题的回答时,对于如何建模这段代码存在一些分歧:

public class MainClass
{
    private Something something;

    public void Action()
    {
        OtherClass other = something.GetOtherClass();
    }
}

关键点是:

  1. 该类Something是 中的一个属性MainClass,表示关联
  2. 该类Something在内部被引用MainClass,表明存在依赖关系
  3. 依赖项应该是一个专门的关联

但是,由于在供应商类不是属性的情况下依赖关系可能是合适的,因此使用依赖关系是否“隐藏”了它Something是属性的意图,而不是简单地引用?

此外,表示类中的属性的关联是否意味着依赖关系,因为它正在被存储(并且可能以某种方式引用和使用)。

那么,参考以上几点,关联是否意味着依赖关系,您将如何在类图中对上述代码进行建模?

4

3 回答 3

4

依赖和关联是两个不同的概念。根据 UML 元模型,两者都是“关系”元类的两个独立子类。

但是,确实,在您的场景中,我只是为两个类之间的关联而不是依赖项建模。这两个类通过关联连接的事实已经使它们相互依赖。

于 2009-07-20T10:34:06.397 回答
0

我认为这真的取决于您尝试使用特定图表显示的内容。你可以用任何一个来建模。如果在上下文中有意义,您甚至可以使用组合。

于 2012-03-01T17:17:33.577 回答
0

分为三类,第一类是 MainClass,第二类是Something,第三类是 OtherClass。如果您使用 UML 工具生成您将看到图表的类,那就太简单了。它由你的类组成。MainClass我相信和之间连接的虚线OtherClassMainClass和之间连接的线(关联)Something

于 2012-07-31T03:14:44.113 回答