`
cherami
  • 浏览: 205740 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

得到当前方法

    博客分类:
  • Java
阅读更多

在写代码的时候我们可能会需要当前的方法名,特别是在输出一些调试信息的时候,但是如果使用字符串硬写的话不太好,API好像也不带对应的功能,如果细心的话,异常信息里面是带出错的方法名的,我们可以dump stack trace并分析得到当前方法的方法名,实际上有更好的方法,和dump stack trace类似:
public static String getCurrentMethodName() {
    StackTraceElement element=Thread.currentThread().getStackTrace()[3];
    return element.getClassName()+"."+element.getMethodName();
}
为什么是3呢?从0到2分别是:
java.lang.Thread.dumpThreads
java.lang.Thread.getStackTrace
xxx.Xxxx.getCurrentMethodName:也就是你定义这个工具方法的类


作者: 解惑/Cherami
原载: 得到当前方法
版权所有。转载时必须以链接形式注明作者和原始出处及本声明。
分类: Java
分享到:
评论
1 楼 litchi 2008-05-11  
上面的Thread的getStackTrace()方法只在1.5中才被加入

相关推荐

Global site tag (gtag.js) - Google Analytics