uml类图关系问题

uml类图关系问题,uml,Uml,我在网上读了很多书。但仍然困惑,也许有人能为我澄清 我有两个问题: 类C是类B的一部分。如果类A需要通过类B中的getter获取类C(即B.getClassC())。假设A和B之间没有其他关系。那么我应该在类图中画什么呢?A-B协会?还是A-C协会 和前一个相反。类B是类a(组合)的一部分。A与类C关联。现在B使用C作为参数。那么我是否需要指定B和C之间的关系?什么关系?(使用?) 理论上,问题1中a和B之间存在关系,问题2中B和C之间存在关系。但若我在类图中指定了所有这些,那个么可能会使类图更

我在网上读了很多书。但仍然困惑,也许有人能为我澄清

我有两个问题:

  • C
    是类
    B
    的一部分。如果类
    A
    需要通过类
    B
    中的getter获取类
    C
    (即B.getClassC())。假设
    A
    B
    之间没有其他关系。那么我应该在类图中画什么呢?A-B协会?还是A-C协会
  • 和前一个相反。类
    B
    是类
    a
    (组合)的一部分。A与类
    C
    关联。现在
    B
    使用
    C
    作为参数。那么我是否需要指定
    B
    C
    之间的关系?什么关系?(使用?)
  • 理论上,问题1中a和B之间存在关系,问题2中B和C之间存在关系。但若我在类图中指定了所有这些,那个么可能会使类图更加复杂


    提前感谢。

    我不会太在意在UML中显示它的正确方式。UML并没有声明您必须在一个图中显示每个关系,这将导致混乱

    您正在谈论的“软”关系,我将不在图中,或者只是作为依赖项显示在图中。也就是说,如果C中的某些东西发生了变化,那么它就会对A产生影响


    UML用于传达设计。它并不是说你必须展示一切。我会把这些“软”关系排除在外。组合关系(即在构造函数中形成的)实际上是您应该关注的唯一关系。如果它不是您想要显示的组合关系,请仔细考虑它是否在向最终用户传达任何信息。

    获取类是非常罕见的操作。你肯定是说别的。我们通常正在获取/设置值。第二,区分类、实例、函数和属性。第三,你所说的“A类是B类的一部分”是什么意思?B是父类吗?B的实例是否具有作为A实例的属性?A是否在B中声明为内部类?纠正你的问题,它毫无意义。组合意味着类A有一个由B的实例组成的属性。在如此小的图中,你必须显示所有关系,否则它们将毫无用处。这取决于。我发现,如果我想说明基数,那么我会把这些链接放进去。uml非常灵活,更像是一个草图工具,而不是系统的绝对100%可视化表示。