Class
オブジェクトがあります。Class
オブジェクトが表すタイプが特定のインターフェイスを実装しているかどうかを確認したいと思います。どうすればこれを達成できるのだろうかと思っていました。
私は次のコードを持っています。基本的には、指定されたパッケージ内のすべてのクラスの配列を取得します。次に、配列を調べて、インターフェイスを実装するClassオブジェクトをマップに追加します。問題は、isInstance()
オブジェクトをパラメータとして受け取ることです。インターフェイスをインスタンス化できません。だから私はこれに少し戸惑っています。何か案は?
Class[] classes = ClassUtils.getClasses(handlersPackage);
for(Class clazz : classes)
{
if(clazz.isInstance(/*Some object*/)) //Need something in this if statement
{
retVal.put(clazz.getSimpleName(), clazz);
}
}