Java获取当前操作方法名
观前提示:
本文所使用的IDEA版本为ultimate 2019.1,JDK版本为1.8.0_141。
Thread.currentThread().getStackTrace()[1]是你当前方法执行堆栈
Thread.currentThread().getStackTrace()[2]就是上一级的方法堆栈
代码如下
package testMethod;
public class Test {
public static void main(String[] args) {
System.out.println("Main : " + Thread.currentThread().getStackTrace()[1].getClassName());
Child.childFunction();
}
}
package testMethod;
public class Child {
public static void childFunction(){
System.out.println("Current : " + Thread.currentThread().getStackTrace()[1].getClassName());
System.out.println("Parent : " + Thread.currentThread().getStackTrace()[2].getClassName());
}
}
运行结果