Javaで現在実行中のメソッドの情報を取得する方法
Javaで実行中のメソッドの情報は、旧来は次のような方法が用いられていた。
String methodName = new Throwable().getStackTrace()[0].getMethodName()
しかしこれはパフォーマンス的にはあまりいい方法ではないし、リフレクションのMethodオブジェクトではないのでその他の情報が取れない。Java 1.5からは次の方法で現在実行中のメソッドのMethodオブジェクトが取得できる。
Method method = new Object(){}.getClass().getEnclosingMethod();
パフォーマンス的にどうかはわからないが、Methodオブジェクトが取得できるのはいいと思う。