如何从该类中的静态方法获取该类的名称.例如

public class MyClass {
    public static String getClassName() {
        String name = ????; // what goes here so the string "MyClass" is returned
        return name;
    }
}

在上下文中,我实际上希望在异常中返回类名作为消息的一部分.

推荐答案

为了支持正确的重构(重命名类),您应该使用以下任一方法:

 MyClass.class.getName(); // full name with package

或者(感谢@James Van Huis):

 MyClass.class.getSimpleName(); // class name and no more

Java相关问答推荐

Java Swing绘制gif作为多个JSYS和JLabels的背景

具有默认分支的JUnit代码覆盖率切换声明

获取字符串中带空格的数字和Java中的字符

呈现文本和四舍五入矩形时出现的JavaFX窗格白色瑕疵

@Rollback @ Transmission在验收测试中不工作

如何为JavaFX Spring Boot应用程序制作Windows/MacOS/Linux安装程序

Tinylog中的滚动文件会在每次应用启动时覆盖日志(log)文件

如何只修改父类ChroniclerView位置0处的第一个嵌套ChroniclerView(child)元素?

如何在JavaFX循环中完美地制作一个AudioClip/MediaPlayer?

解析方法";javax/imageio/metadata/IIOMetadata.getAsTree(Ljava/lang/String;)Lorg/w3c/dom/Node时加载约束冲突

为什么有两种实现来检索数组类的组件类型?

如何在Java springboot中从一个端点发送多个时间响应?

如果List是一个抽象接口,那么Collectors.toList()如何处理流呢?

如何在ImageIO或十二只猴子中旋转TIFF CMYK图像?

如何处理两个几乎相同的XSD文件?

为什么mvn编译生命周期阶段不只是编译已更改的java文件?

如何对存储为字符串的大数字数组进行排序?

JXBrowser是否支持加载Chrome扩展?

转换为JSON字符串时,日期按天递减-Java

java.exe如何执行java源代码?