`instanceof` 是 Java 语言中的一个关键字,用于测试对象是否为特定类的实例或该类的子类的实例。其用法如下:
语法:
```java
object instanceof ClassName
```
其中 `object` 是要测试的对象,`ClassName` 是要测试的类名。如果 `object` 是 `ClassName` 类或其子类的实例,表达式的结果为 `true`;否则为 `false`。
示例:
假设有一个类 `Animal` 和它的子类 `Dog` 和 `Cat`,现在有一个对象 `dogObj` 是 `Dog` 类的实例,那么下面的表达式的结果将是 `true`:
```java
Dog dogObj = new Dog();
System.out.println(dogObj instanceof Animal); // 输出 true
```
这个表达式可以表明 `dogObj` 是 `Animal` 类或其子类的实例,也就是它可以接受所有的继承自 `Animal` 的类的实例。同样的道理,下面的表达式也会返回 `true`:
```java
System.out.println(dogObj instanceof Dog); // 输出 true,因为 Dog 是 Animal 的子类
```
需要注意的是,如果尝试对一个非对象(null)使用 `instanceof` 操作符,将会抛出空指针异常(NullPointerException)。因此在使用前应该确保对象不为空。