Я пытаюсь использовать отражение, чтобы определить, реализует ли класс pass-in интерфейс IsWdidget
:
public boolean isAWidget(Class<?> clzz) {
Class<?> runtimeClass = ClassLoader.getSystemClassLoader().loadClass(clzz.getName());
Class<?>[] impls = runtimeClass.getInterfaces();
for(Class<?> clz : impls)
if(clz.getName().equals(IsWidget.class.getName()))
return true;
return false;
}
Является ли это лучшим/наиболее эффективным способом определения этого? Я также вижу метод IsWidget.class.isAssignableFrom(Class<?>)
...