我要做的就是获取当前的类名,并且java在类名的末尾附加了一个无用的废话$ 1。如何摆脱它,只返回实际的类名?
String className = this.getClass().getName();
“ $ 1”不是“无用的废话”。如果您的班级是匿名的,则会附加一个数字。
如果您不想要类本身,而是想要它的声明类,则可以使用getEnclosingClass()
。例如:
Class<?> enclosingClass = getClass().getEnclosingClass();
if (enclosingClass != null) {
System.out.println(enclosingClass.getName());
} else {
System.out.println(getClass().getName());
}
您可以将其移动到某些静态实用程序方法中。
但是请注意,这不是当前的类名。匿名类与其封闭类是不同的类。内部类的情况与此类似。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句