黑马程序员技术交流社区
标题:
子类对象赋值给父类对象
[打印本页]
作者:
zhqw_heima
时间:
2015-3-15 15:39
标题:
子类对象赋值给父类对象
本帖最后由 zhqw_heima 于 2015-3-15 15:40 编辑
当一个子类重载了父类的某个方法后,将子类的对象赋值给父类的对象,为什么不报错!
作者:
殷俊
时间:
2015-3-15 15:47
贴段代码出来呗,这么说不好解释
作者:
千殇一梦
时间:
2015-3-15 15:53
这不是变成了父类对象指向了子类对象吗。这是多态吧
作者:
云行水边
时间:
2015-3-15 15:57
如果子类没有从写父类的方法, 则此时的对象调用继承父类的方法;否则,此时的对象调用子类方法.#在这里快速回复
作者:
DxxD
时间:
2015-3-15 15:59
有代码好看点。。。。
作者:
小十
时间:
2015-3-15 15:59
那是因为父类中有和子类相同的方法自己类中有又怎么会报错呢?
向上转型嘛!
作者:
武维京
时间:
2015-3-15 16:05
重载:类内部多态,指的是一个类中有两个参数列表不同的同名方法。
重写:继承下多态,指的是子类复写了父类的方法,此时什么都相同,只是功能变为子类特有的,可以从新定义。
你说的这种情况应该是重写。多态的前提就是继承,所以父类引用指向子类对象。不会报错!!!
作者:
胡谭龙
时间:
2015-3-15 17:42
这是多态的表现 ,子类继承了父类 然后重载了方法,最后子类向上转型成父类,没有错误
作者:
Shey
时间:
2015-3-15 18:05
当然不会报错,不过,你要是继续调用重载方法就错啦
作者:
huhanghao
时间:
2015-3-15 18:20
这就涉及到了多态的知识。建议去看一下。讲子类对象赋给父类对象之后,你所能用的方法只能是父类之中的方法。
作者:
董志立
时间:
2015-3-15 20:21
感觉楼主说的是多态,最好代码的出来!!
作者:
179407246
时间:
2015-3-15 20:27
小十 发表于 2015-3-15 15:59
那是因为父类中有和子类相同的方法自己类中有又怎么会报错呢?
向上转型嘛! ...
学习了!!!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2