私はEclipseが完全に解決する特定の問題がありますが、私はプログラム的な解決策が必要です。 私がしたいことは、私が提供するクラスの "タイプ階層"を得ることです。 Eclipseは、Ctrl + Tを押すと解決策を示しますが、これはどのように達成されますか? 利用できるAPIがありますか?Javaでクラス階層を取得するには?
7
A
答えて
2
Javaには、あなたが持っているクラスの基底クラス、および特定のクラス実装のインターフェイスを判別するために使用できるReflection APIがあります。しかし、そのクラスから継承するクラスを決定することはもう少し難しくなります。また、リフレクションAPIを使用すると、そのクラスのメンバーが何であるかを判断したり、そのクラスのメソッドなどを呼び出すこともできます。
public void DisplaySuperClass(Class c)
{
System.out.println(c.getSuperclass().getName());
}
7
Javaのreflection APIを使用すると、実行時に型に関する情報を取得できます。
たとえば、Class.getSuperclass()を使用すると、タイプツリーを上に移動し、クラスの親を見つけることができます。
1
しかし、クラスのすべてのサブクラスを簡単に見つける方法はありません。 これはクラスパス(多くの場合、数千になる可能性があります)にすべてのクラスをロードし、おそらくカスタムClassLoader
を使ってこのツリーを構築する必要があります(あなたがそこに行きたいと思う痛みに強い場合のみ)
+0
ありがとうございました...本当に役に立ちました。:) – Sonam
関連する問題
- 1. Javaマップ階層でフィールドを取得する方法は?
- 2. 階層レベルでオントロジークラスを取得する
- 3. Javaで呼び出し階層を取得する
- 4. NSView - スーパービュー階層を取得
- 5. Java - クラス階層を決定するには?
- 6. クラス階層C++
- 7. IMetaDataImport EnumMethodsで基本クラス階層のメソッドを取得
- 8. Google AppEngine(Java)の複合クラス階層
- 9. 子階層のパスをJavaの親まで取得
- 10. Javaツリー階層
- 11. 色のクラス階層
- 12. Pythonでクラス階層を拡張する
- 13. 階層URIで属性を取得する方法は?
- 14. Javaでネットワークパケット階層を作成する
- 15. Java zk階層フェッチデータベース
- 16. sql階層テーブルからツリーを取得
- 17. 階層&データ構造Javaで
- 18. クラス階層を処理する方法
- 19. クラス階層のメソッドを変更する
- 20. 親子クラス階層を実装する
- 21. エンティティコード内の階層データの取得
- 22. WPF TreeViewでクラス階層を表示するには?
- 23. Entity Frameworkで階層的にデータを取得します
- 24. oracleの子ノードのツリー階層を取得する方法は?
- 25. Clonableクラス階層とunique_ptr
- 26. クラス階層内のイベント
- 27. 階層型クラスの設計
- 28. クラスとオブジェクトの階層
- 29. Newtonsoft JsonのSerialisingクラス階層
- 30. Amazon DynamoDBとクラス階層
ありがとう...本当に役に立った... :) – Sonam
@ user599584:あなたが答えが好きで、それがあなたの質問に答えたら、答えの横にあるチェックマークをクリックすることでそれを受け入れるべきです。 – Avi