instanceof的问题
左边是要求引用,右边实例对吧,那么不是说instanceof那节课不是说右边是左边本身类,或者右边是左边父类情况下的时候可以符合条件吗,而这个左边是父类引用而右边确是子类,😳
1
收起
正在回答
3回答
同学你好,
1、obj intanceof Cat只是用来判断obj是否是Cat的实例对象或者Cat子类的实例对象,与向上转型无关。
1、首先obj是一个Animal的引用,指向Cat的对象。
2、在调用feed方法时,经过了向上转型。feed的方法参数在这里不光可以是Cat对象,也可以是Animal子类的对象,这是方法参数是Animal的意义。
3、在调用时,经过向上转型,所以,在方法中,需要进行向下转型。
如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
吃吃吃鱼的猫
2019-07-14 17:22:01
同学你好,
instanceof 这个关键字的用法是:
A instanceof B ,返回值为boolean类型,用来判断A是否是B的实例对象或者B子类的实例对象。
如果是则返回true,否则返回false。
如:
Person p = new Person(); Man m = new Man(); //Man是Person的子类 Animal a = new Animal(); m instanceof Man //返回true m instanceof Animal//返回false m instanceof Person//返回true
Animal obj=new Cat();
就是向上转型哦~
如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
n_nmingzibuhaoqi
2019-07-14 16:40:43
这个应该没有向上转型这步操作吧,如果有的话倒是可以解释了,就是这个Animal obj=new Cat();
Java零基础入门18
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星