ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

用instanceof关键字进行判断

2022-05-24 20:31:57  阅读:114  来源: 互联网

标签:instanceof 判断 dog Dog Cat 关键字 animal cat


/*
如何才能知道一个父类引用的对象,本来是什么子类?
格式:
对象 instanceof 类型
这将会得到一个boolean值结果,也就是判断前面的对象能不能当做后面类型的实例。
*/
public class Demo02Instanceof {
public static void main(String[] args) {
// Animal animal=new Cat();//本来是一只猫
// animal.eat();//猫吃鱼

Animal animal=new Dog();//本来是一只狗
animal.eat();//狗吃骨头

//如果希望调用子类特有方法,需要向下转型
//判断一下父类引用animal本来是不是Dog
if(animal instanceof Dog){
Dog dog=(Dog)animal;
dog.watchHouse();//狗看家
}
//判断一下animal本来是不是Cat
if(animal instanceof Cat){
Cat cat=(Cat)animal;
cat.CatchMouse();//猫抓老鼠
}
//结果:
//狗吃骨头
//狗看家
giveMeAPet(new Dog());
}
public static void giveMeAPet(Animal animal){
if(animal instanceof Dog){
Dog dog=(Dog) animal;
dog.watchHouse();
}
if(animal instanceof Cat){
Cat cat=(Cat)animal;
cat.CatchMouse();
}
}
}

标签:instanceof,判断,dog,Dog,Cat,关键字,animal,cat
来源: https://www.cnblogs.com/yyn1999/p/16307038.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有