获取对匿名内部 class 的 class 对象的引用

Get the reference to the class object of an anonymous inner class

如何获取对 Java 中匿名内部 class 的 class 对象的引用?

使用非匿名 class 完成 ClassName.class

如果为了引用匿名你要求引用匿名 class,你的匿名 class 的 java.lang.Class 实例对象是你如何做到的。

如果将匿名 class 实例分配给变量 obj,则可以使用 obj.getClass() 引用 class。该示例使用 Object,但可以使用任何非 final class 和任何接口。

Object obj = new Object() {

};

obj.getClass(); // Reference to the anonymous class

您也可以在不显式创建变量(例如 obj)的情况下执行相同的操作

Button b = ...;
b.addActionListener(new ActionListener() {
    ....
}); 

ActionListener[] listeners = b.getActionListeners();
for (ActionListener listener : listeners) {
    System.out.println(listener.getClass());  // Prints the reference to the class
}

如果不能使用 'Anonymous' 类型对象的引用(至少有反射),你不能这样做。