如何在java方法中获得当前方法的名称

如题所述

// 获得当前类名
String clazz = Thread.currentThread() .getStackTrace()[1].getClassName();
// 获得当前方法名
String method = Thread.currentThread() .getStackTrace()[1].getMethodName();
System.out.println("class name: " + clazz + " Method Name " + method);

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-07-30

参考地址:http://blog.csdn.net/fanys88/article/details/23589115

 获得当前方法名:

       JDK1.4
     new   Exception().getStackTrace()[i].getMethodName();//其中i   =   0就是当前的类的方法名字 ;i   ==   1就是调用者的方法

       JDK1.5之后可用

 Thread.currentThread().getStackTrace()[1].getMethodName();//具体使用数组的那个元素和JVM的实现有关,我在SUN JDK6下面测试的是第二个元素,具体说明可以查看Thread.getStackTrace方法的javadoc

第2个回答  2015-08-07
new Throwable().getStackTrace()[0].getMethodName() 返回字符串即使当前方法名
第3个回答  推荐于2017-10-02
可以通过反射机制来实现,这写方法网上很多。

百度“java反射机制”。本回答被提问者和网友采纳
第4个回答  2015-01-30
Thread.currentThread().getStackTrace()[1].getMethodName()
相似回答