黑马程序员技术交流社区

标题: 关于多态 [打印本页]

作者: HelloWorld!    时间: 2014-11-9 07:58
标题: 关于多态
Man类继承了Person类,如果Person p = new Man( );那么p只能调用Person类的方法,不能调用子类Man的方法。如果Man m = new Man( );Person p = m;p能不能调用子类Man的方法呢?
作者: HelloWorld!    时间: 2014-11-9 08:05
晕,标点组合成了表情符号。后半句是,如果Man m = new Man( ); Person p = m; p能不能调用子类Man的方法呢?
作者: DamonZh    时间: 2014-11-9 09:15
你这个”调用子类Man的方法“是指调用子类特有的方法还是从父类继承的方法呀?我觉得这两个没差别,new Man()返回的也是Man对象的引用,然后赋给p。
作者: dong53821713    时间: 2014-11-9 12:05
不能调用子类的特有方法,如果子类方法是重写父类的方法可以调用
作者: huoxy    时间: 2014-11-9 12:47
这个应该是一样的吧,自己编个小程序试一下就明白了。
作者: 王会涛    时间: 2014-11-9 13:30
描述的问题有点模糊,子类继承父类,子类可以调用父类的非私有方法,如果子类覆盖父类的方法,调用时执行的是子类覆盖过后的方法内容。
作者: 高昌德    时间: 2014-11-9 14:35
不可以,,,只能调用子类覆盖父类的方法和父类的方法




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2