UML图中的私人嵌套Java类[英] Private nested Java class in UML diagram

问题描述

我有一个关于UML的问题.我有一个类,该类简单地包含一个带有私有访问修饰符的内部类 - 无法从其他任何地方访问...通常是为了提出内部类关系,我可以在此处使用(+)关系(+)关系(InnerOddIterator):

在此处输入图像说明

(取自 .html )

我还没有找到有关如何清楚地强调该类是私人的任何信息.您知道是否存在这种方法?如果是,我会很感激您在这里给我一些链接?

只是为了保持清晰,示例代码:

public class DataStrucure {
     // fields, methods, etc
     private class InnerOddIterator{
          // ... 
     };
}

推荐答案

从UML的角度来看.如果分类器(也)嵌套在其他类中,则嵌套类扮演着名称空间的角色.在这种情况下,嵌套类是在上下文名称空间中隐藏的(私有).这意味着,您的图隐含地定义了私人内部类定义.

这是UML上部结构部分的定义的一部分,分类器:

"一个类充当其范围内定义的各种分类器的名称空间,包括类. 分类器将分类器的可见性限制为包含类名称空间的范围内,并用于 信息隐藏的原因.嵌套分类器与包含类中的任何其他分类器一样使用."

其他推荐答案

首先:您的代码中有一些内容并要求使用UML表示.但是,恕我直言,您应该以相反的方式看待它:如何用代码表示该UML-IDEA. (某些编程语言甚至不提供私人嵌套类...).

至于私人嵌套类:我建议使用构图.它更强,但不如继承那么强.如果没有其作曲家,那么组成的班级就不可能存在.几乎完全是一个私人嵌套的班级.

该图取自 http://www.uml-diagrams.org/association.html : 在此处输入图像说明

其他推荐答案

为了表明您的内部类是最好的,对我而言,最好的是 - 如下所示,但在这种情况下,您会错过内部类的内部结构.在此处输入图像说明

本文地址:https://www.itbaoku.cn/post/978762.html