instanceof一般用于强制类型转换之前,例如:
if(a对象 instanceof b类){
b类 bs = (b类) a;
}
但是如果是需要判断两个对象 a1,a2的类型是否一致呢?是不是还是可以用instanceof这个方法呢,答案是否定的,instanceof这个方法当前面一个参数的对象的类是后面一个类或者是其子类时都会返回true,所以不能用于判定一个对象的类型是不是另外一个类型。
一般判定这种情况会使用a.getClass() == Person.class,其中Person是待比较的类型,a是一个未知类型的对象。