gpt4 book ai didi

UML 关联理解问题

转载 作者:行者123 更新时间:2023-12-04 17:33:21 25 4
gpt4 key购买 nike

我已经使用 UML 有一段时间了,我已经阅读了一些关于它的文章、书籍和论坛,但我仍然不明白什么时候应该用关联线连接两个类(一条简单的线或箭头(或者这些不是相同?))。我将提供三个例子——你能告诉我哪一个会导致这两个类处于这种关系中吗?

1.

//a field of OtherClass
public class MainClass
{
private OtherClass other;
}

2.
//method argument
public class MainClass
{
public void Action(OtherClass other)
{ }
}

3.
//method return value
public class MainClass
{
public OtherClass Action()
{ }
}

4.
//used inside a method
public class MainClass
{
private Something something;

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

最佳答案

首先,箭头表示关联的可导航性。单箭头表示单向关系,在这种情况下,只有源类知道目标类。两端的箭头表示双向关系,两个类相互了解。如果不存在箭头,则关联可以默认是双向的,或者为了可读性而被抑制。在实践中,只有当您想强调关联的方向时才应该绘制箭头。

当涉及到您的第二个问题时,只有第一种情况描述了 MainClass 之间的(单向)关联。和 OtherClass .参数和返回值都没有暗示 UML 意义上的关联(尽管两者都暗示依赖)。在最后一个示例中,MainClass 之间存在关联。和 Something类通过something属性。根据经验,您应该在属性中寻找关联。

请注意这里有一个 dependency 的概念在 UML 中,它用虚线表示。

波兹德罗维尼亚!

关于UML 关联理解问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1142339/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com