您可以使用java.lang.Class的isInterface()方法调用来识别类对象是否代表接口类型。
package org.nhooo.example.lang.reflect; import java.io.Serializable; public class IsInterfaceDemo { public static void main(String[] args) { IsInterfaceDemo.get(Serializable.class); IsInterfaceDemo.get(Long.class); } private static void get(Class clazz) { if (clazz.isInterface()) { System.out.println(clazz.getName() + " is an interface type."); } else { System.out.println(clazz.getName() + " is not an interface type."); } } }
这是程序的结果:
java.io.Serializable is an interface type. java.lang.Long is not an interface type.