2

クラスにメソッド m があるとします。プロジェクト全体で m を呼び出すすべてのメソッドを見つけようとしています。メソッドのリスト/配列を出力する必要があることを除いて、Eclipse の呼び出し階層ツールに似ています。静的に必要なので、スタック トレースが機能するとは思わない。おそらくリフレクションを使用して、これを実装する方法はありますか?

Eclipse の呼び出し階層ツールの例へのリンクを添付し、Dog クラスのメソッド barking() に言及しているすべてのメソッドを見つけました。(Dog.hungry() と Cat.scratching() は barking() を呼び出します)。

画像

4

1 に答える 1

1

「標準」の Java リフレクションは、おそらくこれに関して何の助けにもなりません。

オープン ソースのReflectionライブラリを使用してみます。

次の方法でメソッドを検索できます。

Set<Member> usages = reflections.getMethodUsages(Method.class)
于 2014-10-24T20:13:06.127 に答える