检查类型

时间:2018-04-27 12:52:39

标签: java oop inheritance

我想做的事情最容易解释如下:

Animal animal = petStore.getRandomAnimal();

if(animal.isDog()){
    kennel.add(animal)
}

显然我不能这样做,因为kennel.add()只接受类型Dog。

我已经确定动物是狗,但我如何让编译器知道这个?

在java中工作。

1 个答案:

答案 0 :(得分:1)

将Animal Object转换为Dog类

Animal animal = petStore.getRandomAnimal();

if (animal instanceof Dog) {
    kennel.add((Dog) animal)
}