高级农民
- 积分
- 1061
- 大米
- 颗
- 鳄梨
- 个
- 水井
- 尺
- 蓝莓
- 颗
- 萝卜
- 根
- 小米
- 粒
- 学分
- 个
- 注册时间
- 2015-8-9
- 最后登录
- 1970-1-1
|
交作业。
谢谢前面同学的总结,大致把继承和多态理解清楚了些。
自己再总结一下:
对象变量在call方法的时候,静态类型有的方法才能call。
在执行的时候取决于动态类型,无论变量被转型成父类还是子类,被重写的方法被call的时候都是执行的实例对象的方法。
向下转型赋值给子类变量时,实例必须是子类对象。
对象变量在call fields的时候,取决于静态类型,即如果出现子类父类有同名fields时,
变量被转型成父类就call的父类的field,被转型成子类就call的子类field。
静态类型的方法被调用时,也取决于变量的静态类型。
暂时就这些。
|
 组图打开中,请稍候......
|