黑马程序员技术交流社区

标题: 关于继承 [打印本页]

作者: 一切都好    时间: 2013-12-29 11:39
标题: 关于继承
本帖最后由 一切都好 于 2013-12-29 16:11 编辑

同一个类中不能有完全一样的两个方法,但子类继承了父类就有了父类的所有成员,为什么子类中还可以写和父类中一样的方法呢?
作者: 许庭洲    时间: 2013-12-29 12:12
本帖最后由 许庭洲 于 2013-12-29 12:15 编辑

1. 如果所有的类都处在同一级别上,这种没有相互关系的平坦结构就会限制了系统面向对象的特性;
2. 继承的引入,就是在类之间建立一种相互关系,使得新定义的派生类的实例可以继承已有的基类的特征和能力,而且可以加入新的特性或者是修改已有的特性,建立起类的层次;
3. 继承是可以传递的。如果C从B中派生,B又从A中派生,那么C不仅继承了B中声明的成员,同样也继承了A中的成员。
4. 派生类如果定义了与继承而来的成员同名的新成员,就可以覆盖已继承的成员。
5. 例如:类Car继承了Vehicle的Speak()方法,那么可以给Car类也声明一个Speak()方法,覆盖Vehicle中的Speak。




作者: 红鹰(Jake)    时间: 2013-12-29 12:27
同一个类中是不能有相同的方法,这样就不能实现独立性,编译出现错误。而继承父类的方法,为了区分层次的结构性,是可以对方法进行重写,使其对自己进行独立性。
作者: з︶_伱眼裏    时间: 2013-12-29 12:41
类是根据生活来的,类的继承可以更清楚的用代码来实现生活,类和类之间可以通过继承来联系到一起,把它们联系到一起,就会有大家共有的的东西,比如人都有名字,年龄,还有做的某件事。而在子类中还可以写同名方法,是为了,更能体现出类的特性。
作者: y494890511    时间: 2013-12-29 14:09
1.可以用new覆盖父类方法
2.可以用override重写父类方法
作者: haxyek    时间: 2013-12-30 00:40
这就是多态啊~




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