1. ホーム
  2. java

[解決済み] スタックトレースやリフレクションを使ってメソッドの呼び出し元を見つけるにはどうしたらいいですか?

2022-03-22 09:21:13

質問

あるメソッドの呼び出し元を見つける必要があります。スタックトレースやリフレクションを使えば可能でしょうか?

どのように解決するのですか?

StackTraceElement[] stackTraceElements = Thread.currentThread().getStackTrace()

Javadocsによると。

配列の最後の要素はスタックの底を表し、一連のメソッド呼び出しの中で最も新しいものを表します。

A StackTraceElement があります。 getClassName() , getFileName() , getLineNumber()getMethodName() .

どのインデックスが必要かは、実験してみないとわかりません。 (おそらく stackTraceElements[1] または [2] ).