java怎样获取函数调用者的方法名?

如下面代码

 class A{
     private void  method(){
            //这里怎样获取调用者的名称呢?
     }

     private void method1(){
                    method();
     }

     private void method2(){
                method();
     }

 }

使用StackTraceElement 数组,
参看在Java代码运行时获取当前和调用者的行号,方法名,类名,文件名

我不知道怎么直接获取到,如果为method()添加一个参数表示调用方法的名称,由调用者传入自己的名称,不知道是否满足你的要求。

class B {
    private void method(String invokeName) {
    }

    private void method1() {
        method("method1");
    }

    private void method2() {
        method("method2");
    }
}

采纳的答案很对,现在给大家一个懒人代码

    //获取调取函数所在类名称
    public static String getLastClassName(){
        String name=Thread.currentThread().getStackTrace()[3].getClassName();
        return name;
    }