方法一:new Exception().getStackTrace()[0].getMethodName(),代价有点大,需要生成一个异常的实例。
方法二:JDK1.5之后可用, Thread.currentThread().getStackTrace()[1].getMethodName(),具体使用数组的那个元素和JVM的实现有关,我在SUN JDK6下面测试的是第二个元素,具体说明可以查看Thread.getStackTrace方法的javadoc。
Java异常处理技巧:深入探讨两种方法
本文详细解析了Java中处理异常的两种方法,包括通过newException().getStackTrace()[0].getMethodName()和Thread.currentThread().getStackTrace()[1].getMethodName()获取调用堆栈信息的原理和应用。重点讨论了它们的实现细节、优缺点及适用场景,旨在帮助开发者更高效地进行错误处理。
方法一:new Exception().getStackTrace()[0].getMethodName(),代价有点大,需要生成一个异常的实例。
方法二:JDK1.5之后可用, Thread.currentThread().getStackTrace()[1].getMethodName(),具体使用数组的那个元素和JVM的实现有关,我在SUN JDK6下面测试的是第二个元素,具体说明可以查看Thread.getStackTrace方法的javadoc。

被折叠的 条评论
为什么被折叠?