我有一些内部私有类,我不确定将它们放在我的类图中的哪个位置。 他们应该在外部课堂上还是自己上课?
答案 0 :(得分:2)
您可以在外部使用containment
在外部类的一侧标记+
来表示它们。你可以找到它here。
答案 1 :(得分:2)
UML语言与您正在使用的任何建模工具之间始终存在差异,因此实现某些目标的最佳方式取决于工具。
在UML中,类具有可见性/范围,就像类成员一样。换句话说,UML允许私有类,但这并不意味着您的工具可以显示该类的“私有性”。
UML还允许类包含其他类。换句话说,类可以作为包。同样,该工具如何显示这种情况会有所不同。
从纯UML的角度来看,我建议将内部类包含在外部,并标记为private。
在图中,如果您的工具没有显示命名空间,您可以调整外部类的大小并将内部放在其中。如果您的工具允许调整大小,那就是。
最后,除非你总共只有8个或10个类,否则我建议在单独的图表中显示内部类。
答案 2 :(得分:1)
UML用于设计或描述复杂的体系结构。我不认为在UML类图中提及内部类很重要。如果您在接口级别设计系统实现,那么私有类就会失焦,以及所有私有方法。您的图表应该只包含公共方法=接口方法。
答案 3 :(得分:0)
我认为你不能在UML类图中的另一个类中有一个类。您在UML中呈现它们的方式应该反映它们与父类的结构关系。如果它们是为了方便而创建的,那么你可以将它们连接起来。如果它们具有包含或聚合关系,则UML具有适当的语法。在任何情况下,内部类都是特定于语言的,因此UML对它们有明确的支持是奇怪的(实际上是错误的设计)。
潜在相关的外部讨论:http://www.coderanch.com/t/99318/patterns/Inner-Class-UML
答案 4 :(得分:0)