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();//输出 猫吃鱼
    }
}

输出结果:猫吃鱼

觉得不错的小伙伴请点赞、评论或收藏一下多支持支持博主小弟,跪安~~

发布了40 篇原创文章 · 获赞 31 · 访问量 3357
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览