我想检查一个类是否实现了特定接口的所有方法,而不是直接实现它。
例如,考虑以下接口。
以下是类:
A 实现了该接口,因此具有 myMethod 方法。
B没有实现该接口,但有myMethod方法。
例如,考虑以下接口。
public interface MyInterface {
public String myMethod();
}
以下是类:
A 实现了该接口,因此具有 myMethod 方法。
public class A implements MyInterface {
public String myMethod() {
return "something";
}
}
B没有实现该接口,但有myMethod方法。
public class B {
public String myMethod() {
return "something else";
}
}
MyInterface.class.isAssignableFrom(A.class);
为 true
,而 MyInterface.class.isAssignableFrom(B.class);
为 false
。我正在寻找一种方法,可以同时返回这两个类的真值。
使用反射,对于每个类,我可以循环遍历接口的方法,并检查它是否在类中实现。有没有更聪明的方法来做到这一点?