我有一个间接实现接口的类(它的超类或超类实现可以实现),我想知道这个类是否实现了接口。
在编码术语中:
import java.lang.reflect.Type;
class My implements MyName{
}
public class Tset extends My implements yourName{
public static void main(String[] args) {
Class[] allClassAndInterfaces = Tset.class.getInterfaces();
//but allClassAndInterfaces is not giving me the MyName Interface
//although it gives me YourName Interface
System.out.println(ArrayUtils.toString(lits));
}
}
在class类中有一个叫做isAssignableFrom的特定方法,它可以做你想做的事情。在您的例子中,这应该返回true:
MyName.class.isAssignableFrom(My.class);
您还可以使用instanceof
来检查(类的实例)是否实现了接口。
interface X { }
class A implements X { }
System.out.println(new A() instanceof X); // <---- prints true