黑马程序员技术交流社区
标题:
继承小问
[打印本页]
作者:
葛晓东
时间:
2014-5-29 00:14
标题:
继承小问
本帖最后由 葛晓东 于 2014-5-29 20:28 编辑
父类引用指向子类, 为什么运行子类重写的方法,为什么变量走父类的?
作者:
孟祥钰
时间:
2014-5-29 00:21
你应该问的是多态使用的特点吧
成员变量:编译时,只看引用变量所属的类,即看左边的父类。运行时跟编译时一样。
成员方法:编译时,要查看引用变量所属的类中是否有所调用的成员,即看左边的父类,而运行时要查看对象所属的类中是否有所调用的成员,看右边的子类,即你所说的运行子类重写。
作者:
yang1352546
时间:
2014-5-29 00:21
继承后,子类父类,成员方法特点,非常重要的环节
当子类,父类出现了一模一样的方法时,现象称为子类重写父类的方法
重写,叫覆盖,复写 override
A. 成员变量:
子类和父类中出现了同名的成员变量
如何访问父类和子类的呢
访问父类,super.父类的成员变量
访问自己,this.自己的成员变量
如果成员变量静态修饰 不要考虑super 不要考虑this
直接类名调用
成员变量,是没有覆盖的概念的
父类中所有的非静态成员变量,建立子类对象的时候,跟随子类对象在堆中存储
打上super标记
B. 成员方法 ExtendsDemo5.java
子类继承父类后,出现了一模一样的方法
子类重写父类方法,目的为了扩展
保证子类方法权限大于或者等于父类方法权限
静态方法,覆盖静态,非静态覆盖非静态
作者:
lin'
时间:
2014-5-29 08:45
子类需要重写父类的东西
作者:
Blüe-wǒlf
时间:
2014-5-29 09:05
貌似有个编译看左边,运行看右边的视频,你再找找看,说的更详细点
作者:
EDDY_Liang
时间:
2014-5-29 09:33
三楼的兄弟已经答得很详细了,懂了就把帖子改成结束提问把
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2