检查类是否实现给定类名的接口

给定的

String className = "com.example.MyClass";

我如何能够检查这个类是否实现了特定的接口?

我试过了

Class myClass = Class.forName(className);
if (myClass instanceof MyInterface) {}

if (myClass.isInstance(MyInterface.class)) {}

但两者都不起作用 - 显然 Class 对象没有继承 MyInterface

检查类是否仅在给定类名的情况下实现接口的正确方法是什么?


小怪兽爱吃肉
浏览 154回答 1
1回答

宝慕林4294392

你可以用Class.isAssignableFrom(Class)做到这一点:if (MyInterface.class.isAssignableFrom(myClass)) {   ...   }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java