阅读背景:

Java 基础笔记 instanceof的使用

来源:互联网 
问题:如何知道一个父类引用的对象本来是什么子类?
格式:对象名称 instanceof 类名称
此方法会返回一个boolean值结果,判断前面对象是不是后面类的实例化,是返回true,否返回false。

public static void main(String[] args) {
    Animal animal = new Cat(); //本来是一只猫
    getAnimal(animal); //调用
}

//判断参数animal是哪个子类的实例化
public static void getAnimal(Animal animal)
{
    //若是一只狗,则调用狗的方法
    if(animal instanceof Dog) 
    {
        Dog dog = (Dog)animal; //向下转型
        dog.eat();//输出 狗吃肉
    }
    //若是一只猫,则调用猫的方法
    if(animal instanceof Cat)
    {
        Cat cat = (Cat)animal;  //向下转型
        cat.eat();//输出 猫吃鱼
    }
}问题:如何知道一个父类引用的对象本来是什么子类?
格式:对象名称 insta



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: