Class UML类图

Class UML类图,class,inheritance,attributes,uml,diagram,Class,Inheritance,Attributes,Uml,Diagram,我对UML还不熟悉,并试图了解类图。例如,请参见下图(假设作用域是公共的): 类1能否在其他类中直接访问下面的任何方法和属性,或者只能访问自己的方法和属性?类似地,例如类2可以访问类1中的方法和属性吗 我询问的主要原因是我需要生成一个报告操作,该操作计算天数收入,收入将通过迭代类并求和然后返回值来计算 非常感谢您展示了类1和类2之间的单向关联,以及类2到类3、4和5的泛化。在这种情况下,类1可以看到类2的所有公共属性和方法。它还可以看到类3、4和5的相同属性和方法。但是,它没有显示出对类3、4

我对UML还不熟悉,并试图了解类图。例如,请参见下图(假设作用域是公共的):

类1能否在其他类中直接访问下面的任何方法和属性,或者只能访问自己的方法和属性?类似地,例如类2可以访问类1中的方法和属性吗

我询问的主要原因是我需要生成一个报告操作,该操作计算天数收入,收入将通过迭代类并求和然后返回值来计算


非常感谢

您展示了类1和类2之间的单向关联,以及类2到类3、4和5的泛化。在这种情况下,类1可以看到类2的所有公共属性和方法。它还可以看到类3、4和5的相同属性和方法。但是,它没有显示出对类3、4和5的任何扩展属性和方法的可见性。此外,由于单向关系,类2对类1属性或方法没有可见性

请记住,UML中显示的内容并不是对可见性在实现中如何工作的严格描述。您正在展示UML中的重要关系。例如,即使您没有显示类1对类2的可见性,您的类2实现也很可能能够看到类1的所有公共成员

参见段落组成关系

它说:

In UML relationships are presumed to be bidirectional unless the arrowhead is
present to restrict them.

这意味着,由于您的示例中有一个箭头,只有class1可以访问class2,而不是相反。

由于我也从您的问题中学到了一些东西,所以向上投票。另外还有指向umlClassDiagrams.pdf的链接。正是我想要的。