Подтвердить что ты не робот

Как найти имя метода из этого метода в Java?

Мне было интересно, есть ли способ узнать имя метода, которое выполняется во время выполнения?

Например, внутри метода private void doSomething (String s) я хотел бы знать, что я выполняю метод doSomething (String s).

4b9b3361

Ответ 1

С JDK1.5 вам не нужно исключение, чтобы получить StackTrace,
вы можете получить его с помощью Thread.currentThread().getStackTrace():

   public class Test2 {
     public static void main(String args[]) {
        new Test2().doit();
     }
     public void doit() {
        System.out.println(
           Thread.currentThread().getStackTrace()[1].getMethodName()); // output : doit
     }
   }

Ответ 3

Method lastMethodCalled = this.getClass().getEnclosingMethod();