UML在类图中表示一个匿名类?

时间:2012-07-28 22:14:24

标签: java oop uml

如何在UML类图中表示Java匿名类?

3 个答案:

答案 0 :(得分:21)

  

内部(嵌套)类在UML中用关联表示   装饰着一个交叉的圆圈。

插图:

UML inner class

来源:

答案 1 :(得分:3)

Java中有两个真正的匿名类 首先是未命名的内部类。如:

class BGThread<T>{...}
...
class TitleEditDlg{
    new BGThread<Props>(cont, true) {
        @Override
        public Props run() {
            ...
        }
    }
 }

来自UML标准2.5的引用(第149页):

  

匿名InstanceSpecification的标准表示法   未命名的分类器是带下划线的冒号(':')。

因此,对于匿名java类,您应该创建一个只有:作为名称的类块,并将容器类连接到它两次 - 通过容器关系和单向箭头而不是点。另一方面,:块应该连接到父类。


根据相同的来源,Anonymous Bound Class,这是我们在Java中遇到的第二个匿名类,但在使用模板/泛型类时通常不会注意到它,如

class BGThread<T>{...}
...
class TitleEditDlg{
   BGThread<String> newThread= new BGThread<String>();
}    

可以通过两种方式显示:

  • 作为bind依赖项,替换它。
  • 作为中间类,具有父类的名称和尖括号中的替换。请注意,这里的类是匿名的,但该属性有一个名称。所以,通过这种方式,您可以显示更多信息。

enter image description here

答案 2 :(得分:0)

我一直在寻找一种在类图中表示JavaScript对象文字的方法(我知道它没有多大意义......)我找到了这篇文章。

我会为此链接和图片做出贡献。 侨

http://www.uml-diagrams.org/class-diagrams.html

enter image description here