一、背景:有的时候需要动态判断一个类是否实现了某个接口或者继承了某个父类。其实java里面已经有方法了,只是平时用的机会很少,在此mark一下
二、上代码
import java.io.Serializable;
public class IsAssignableFromTest implements Serializable{
/** 序列号 */
private static final long serialVersionUID = 5716955136475665579L;
public static void main(String[] args) {
//测试是否实现了父类
boolean re1= Object.class.isAssignableFrom(IsAssignableFromTest.class);
//测试是否实现了接口
boolean re2=Serializable.class.isAssignableFrom(IsAssignableFromTest.class);
System.out.println("re1:"+re1+" re2:"+re2);
}
}
结果:re1:true re2:true