请教一个向下转换的问题
Animal two=new Cat();这里的two因为指向Cat类 所以可以被强转成Cat
想请问下 如果two没有指向Cat类的话 是不是就不能强转为Cat类了啊 比如Animal two=new Animal();
谢谢!
53
收起
正在回答
2回答
是的,如果本身没有指向该子类,是不能强转的,我之前也疑惑了很久,后来自己码了验证一下,该是什么对象还是什么对象,还有多态应用我的理解是:Animal two=new Cat();是为了编译的时候是通过引用类型来判断方便传入对象,而运行时该用什么对象还是用什么对象,Cat cat = (Cat)two;更多是传数据后进行还原引用, 要是助教回复你了,你回复我一下我来看看我说的对不对
Java零基础入门18
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星