如何确定Java类是否实现特定的接口
发布时间:2020-12-14 05:08:03 所属栏目:Java 来源:网络整理
导读:我正在尝试使用反射来确定传入的类是否实现IsWdidget接口: public boolean isAWidget(Class? clzz) { Class? runtimeClass = ClassLoader.getSystemClassLoader().loadClass(clzz.getName()); Class?[] impls = runtimeClass.getInterfaces(); for(Class? c
我正在尝试使用反射来确定传入的类是否实现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<?>)方法… 解决方法
我将使用
isAssignableFrom 方法来确定IsWidget是否是超级接口:
return IsWidget.class.isAssignableFrom(clzz); 引用上面链接的Javadoc:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |