“ $ 1”不是“无用的废话”。如果您的班级是匿名的,则会附加一个数字。
如果您不想要类本身,而是想要其声明类,则可以使用
getEnclosingClass()。例如:
Class<?> enclosingClass = getClass().getEnclosingClass();if (enclosingClass != null) { System.out.println(enclosingClass.getName());} else { System.out.println(getClass().getName());}您可以使用一些静态实用程序方法来移动它。
但是请注意,这不是当前的类名。匿名类与其封闭类是不同的类。内部类的情况与此类似。



