我的程序有一个公共类,后跟一个构造函数和从方法调用的 2 个本地类(内部类有动作事件)。还有一种额外的静态方法。
公共课
构造函数
本地课程
方法
我对 UML 图如何查找这个感到非常困惑。我之前为超类和子类制作了一个,它很简单,但我不确定如何包含本地类和动作事件(如键监听器)。
谢谢您的帮助。我是java新手,所以请放轻松。
编辑:我的意思是类图,一般来说不是所有的 UML。对不起。
快速的 Google 搜索从http://www.sparxsystems.com/resources/uml2_tutorial/uml2_classdiagram.html得到以下信息:
嵌套 嵌套是显示源元素嵌套在目标元素中的连接器。下图显示了内部类的定义,尽管在 EA 中更常见的是通过它们在项目视图层次结构中的位置来显示它们。
(来源:sparxsystems.com)
UML 定义了 14 种不同类型的图表。在下文中,我将假设您参考最常见的一个:类图。
本地类与定义它们的类没有继承关系。但是,它们的每个实例都包含对定义它们的类的实例的引用。当您编写时new LocalClass()
(这是最常见的),引用的“父”对象是this
. 当您编写aDefiningClassInstance.new LocalClass()
时,引用的“父”对象是aDefiningClassInstance
.
这澄清了,你所说的“公共类”与本地类的关系是一种组合。基数取决于您的特定情况,但很可能与每个本地类是一对一的。
现代版本的 UML 引入了内部类的语法(实际上与本地类相同),但恕我直言,这与特定的编程语言过度相关,并不代表 UML 通常用于的高级关系。
无论方法调用事件处理程序,它都应该属于直接或间接存储对它们的引用的类。如果调用方法属于与定义类不同的类,则这里有两个额外的 UML 聚合关系(也可能是一对一的基数)。