web-dev-qa-db-ja.com

Eclipseで特定のインターフェースを実装するクラスを見つける方法は?

多くの依存関係を持つJARファイルとしてアプリケーションがあります。何らかの理由で、ライブラリの1つを逆コンパイルし、Eclipseで開く必要があります。プロジェクト内の特定のインターフェイスについて、それを実装するクラスを見つける方法はありますか?インターフェイスが他のライブラリに実装されていて、まだ逆コンパイルしていない場合があります。この種のクラスでこれを行うことは可能ですか?

82
Am1rr3zA

インターフェイスを右クリックし、「タイプ階層を開く」を選択します。次に、「サブタイプ階層を表示」をクリックします。

107
JB Nizet

試して Ctrl+T クラス名を選択した後; Java Perspective。

43
Scorpion

アイテムで「タイプ階層を表示」できます(右クリックしてこのオプションを選択するか、 F4 アイテムが強調表示されている場合)*。

ただし、これには、参照されている(「依存」)プロジェクト内のアイテムのみがリストされます。他ではない。

したがって、jarを逆コンパイルしていて、逆コンパイルしていない別のjarがある場合、そのjarの(インターフェースの)実装はリストされません。

また、jarをプロジェクトとして逆コンパイルし、逆コンパイルされたプロジェクトではなく、jarを参照している別のプロジェクトがある場合、その実装もリストされません。

したがって、すべてのjarを逆コンパイルしてプロジェクトとして追加(および「Javaビルドパス」経由で参照を追加)して、選択したjar内のすべての実装がリストされるようにする必要があります。

*クイックタイプ階層、 ctrl + T ツールチップ/オートコンプリートの種類のパネルに同様の構造が表示されます。ただし、完全な型階層は、実行しようとしている分析の種類にとってより便利です。

11
Nivas

Java Searchにラジオボタン「Implementors」があります。

7
Vlad

または、右クリックしてQuick Type Hierarchyを選択し、インターフェースの拡張とクラスの実装のプルダウンメニューを表示します。

1

クラス名を選択し、Eclipseで「F4」(Windows環境)

0

Ctrl + H(検索オプション)開くJava検索パースペクティブ、およびインターフェイス名を入力し、Implementorsラジオボタンをクリックすると、特定のインターフェイスを実装するクラスが表示されます。上のstackexchangerからの回答と同じ

0
Rohit Mathur