【问题标题】:uml Is it possible for two classes to have relations more than 2?uml 两个类的关系是否可能超过 2 个?
【发布时间】:2015-01-21 01:37:38
【问题描述】:

我做了这两个类并尝试用UML类图来表达

publc Class A
{
    public A(){}     
    public void Funct1()
    {
        B b = new B(this);
    }
}

public Class B
{
    A m_A = null;
    public B(A a)
    {
        m_A = a
    }
}

我认为“A”类对 B 有“依赖性”,因为 A 不保持对 B 的引用 而且我认为“B”类具有“与 A 的单向关联”,因为 B 类保持对 A 的引用。

所以,我绘制类图如下。

        dependency
        -------->
     [A]        [B]
           <-
 one directioinal association

但是,即使在我看来,这张图也有些不对劲。 所以,我想知道如何用类图来表达这些类之间的这种关系。

【问题讨论】:

    标签: class uml diagram


    【解决方案1】:

    不,由于你自己提到的原因,这对我来说似乎完全正确。

    唯一的“有点错误”是您在 A 和 B 之间存在双向依赖关系,这使得这两个类紧密耦合。您应该尽可能避免紧耦合,但有时您没有太多其他选择。

    【讨论】:

      【解决方案2】:

      只需要在 UML 中为您的示例定义关联。但是,无法确定 B 侧的多重性,如果可以将 m_A 设置为 null,则 A 侧的多重性为 0..1。 在您的示例中绘制 UML 不需要依赖项。依赖性没有运行时间影响。它是在模型元素定义之间定义的。 阅读 UML 上层结构以获取有关依赖关系的精确信息。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-10-08
        • 2018-06-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多