关键字 instanceof 它返回一个布尔值,告诉我们对象是不是某个特定的实例。可以用提问的方式是用它,就像这样:
if(x instanceof Dog){ ((Dog)x).bark(); }
将x转型成一个Dog前,上面的if语句会检查对象x是否从属于Dog类。进行向下转型前。如果没有其他信息可以告诉你这个对象是什么类型,那么是是用 instanceof 是非常重要的,否则会得到一个ClassCastException异常。