溫馨提示×

java中的instanceof如何用

小億
85
2023-12-28 03:54:29
欄目: 編程語言

在Java中,可以使用instanceof操作符來檢查一個對象是否是某個類的實例或者是其子類的實例。instanceof的語法如下:

obj instanceof ClassName

其中,obj是要檢查的對象,ClassName是要檢查的類名。

instanceof操作符返回一個布爾值,如果objClassName類的實例或者是其子類的實例,則返回true,否則返回false。

下面是一個示例代碼:

public class Animal {
    // ...
}

public class Dog extends Animal {
    // ...
}

public class Cat extends Animal {
    // ...
}

public class Main {
    public static void main(String[] args) {
        Animal animal = new Animal();
        Dog dog = new Dog();
        Cat cat = new Cat();

        System.out.println(animal instanceof Animal); // true
        System.out.println(dog instanceof Animal); // true
        System.out.println(cat instanceof Animal); // true

        System.out.println(dog instanceof Dog); // true
        System.out.println(cat instanceof Dog); // false

        System.out.println(animal instanceof Dog); // false
        System.out.println(animal instanceof Cat); // false
    }
}

在上面的示例中,animal、dogcat都是Animal類的實例,所以animal instanceof Animal、dog instanceof Animalcat instanceof Animal的結(jié)果都為true

dogDog類的實例,所以dog instanceof Dog的結(jié)果為truecat不是Dog類的實例,所以cat instanceof Dog的結(jié)果為false。

同理,animal不是Dog類的實例,所以animal instanceof Dog的結(jié)果為false,animal也不是Cat類的實例,所以animal instanceof Cat的結(jié)果為false。

0