父类既然指向了子类对象,为何不能调通子类特有的方法?
父类既然指向了子类对象,
那么为何不能调通子类特有的方法?
如果说是只能访问编译时范围,
那么为何能使用被子类改别写方法
还有,既然都是引用类型,对象的引用都是指针地址,那父类子类之间交换一下指针为什么还要转换呢?(指针的格式总不会不一样吧)
17
收起
正在回答
1回答
1、因为声明引用时,使用的是父类类型,到了运行时期,父类中没有定义的方法,JVM也不会去子类中查找,所以是不能调用子类独有的方法的。
2、引用之间交换的最终目的是进行成员的使用,虽然形式上都是地址,但是如果不进行类型转换,编译器是无法定位准确类型的,也就无法执行后续调用操作的。
如果我的建议解决了你的问题,请采纳,祝学习愉快!
Android零基础入门2018版
- 参与学习 人
- 提交作业 5461 份
- 解答问题 7238 个
此次推出的专题为Android攻城狮培养计划的第一部分语法与界面基础篇,将带大家从0开始学习Android开发。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星