Java の instanceof キーワードはどのように使用しますか?
instanceofキーワードは、オブジェクトが特定のクラスまたはそのサブクラスのインスタンスかどうかをチェックするために使用されます。その使用法は以下のようです:
object instanceof className
objectをチェックする必要があるオブジェクトであり、classNameはチェックするクラス名です。
コード例:
class Animal {
// 父类 Animal
}
class Dog extends Animal {
// 子类 Dog
}
public class Main {
public static void main(String[] args) {
Animal animal = new Animal();
Dog dog = new Dog();
// 检查 animal 是否是 Animal 类的实例
boolean isAnimal = animal instanceof Animal; // true
// 检查 dog 是否是 Animal 类的实例
boolean isDogAnimal = dog instanceof Animal; // true
// 检查 dog 是否是 Dog 类的实例
boolean isDog = dog instanceof Dog; // true
// 检查 animal 是否是 Dog 类的实例
boolean isAnimalDog = animal instanceof Dog; // false
}
}
上記の例において、私たちはanimalとdogオブジェクトがAnimalクラスまたはそのサブクラスのインスタンスであるかどうかをそれぞれチェックしました。結果からは、animalオブジェクトがAnimalクラスのインスタンスであり、dogオブジェクトがAnimalクラスのインスタンスであると同時に、Dogクラスのインスタンスであることがわかります。