instanceof关键字
instanceof 是 Java 的保留关键字。它的左边是对象,右边是类,它的作用是测试它左边的对象是否是它右边的类的实例,返回 boolean 的数据类型,当对象是右边类或子类所创建对象时,返回true;否则,返回false。
这里说明下:
- 类的实例包含本身的实例,以及所有直接或间接子类的实例
- instanceof左边显式声明的类型与右边操作元必须是同种类或存在继承关系,也就是说需要位于同一个继承树,否则会编译错误
- 左边的对象实例不能是基础数据类型
- 左边的对象实例和右边的类不在同一个继承树上
- null用instanceof跟任何类型比较时都是false