黑马程序员技术交流社区

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

作者: 黄宽    时间: 2014-10-29 07:22
标题: 关于继承的思考
为毛类不能多继承类,而实现接口却可以多继承呢。多继承父类很可能出现错误,但实现多接口却不会?何解!!!

作者: 黄宽    时间: 2014-10-29 07:23
哪位高手知道,帮忙解答一下,谢谢!:)
作者: sk0806    时间: 2014-10-29 11:22
java不支持多继承,但可以多实现。
因为如果多继承,两个父类中,出现同名的函数,子类不知道去执行哪一个
但多实现可以,因为接口中的方法是abstract抽象的,只有方法定义,没有方法体,即便出现重复,也是同名函数,子类复写了
作者: sk0806    时间: 2014-10-29 11:23
java不支持多继承,但可以多实现。
因为如果多继承,两个父类中,出现同名的函数,子类不知道去执行哪一个
但多实现可以,因为接口中的方法是abstract抽象的,只有方法定义,没有方法体,即便出现重复,也是同名函数,子类复写了
作者: 黄宽    时间: 2014-10-29 12:55
如有重复方法,我在子类复写节后怎么知道我要复写的是哪一个接口抽象方法。另外要实现接口必需要实现它所有方法才行,难道我要把所有重复的方法都复写,还是复写一次就行了哦,还是搞不清啊
作者: jacoblx    时间: 2014-10-30 17:58
多实现,如果出现重复方法,那么子类复写的方法不需要清楚地知道复写的是哪一个,因为不影响编译和运行,结果是绝对一致的。你也可以理解两个接口的方法都复写了。重复的方法复写一次就可以了,因为本身方法是完全一样的声明啊。
作者: 冥夜    时间: 2014-10-30 18:02
继承的话,类中有重复的方法那么子类就不到该执行哪个父类,而接口内都是抽象的,就算冲突了因为都没有实际内容子类可以随意复写。
作者: 黄宽    时间: 2014-10-30 19:50
jacoblx 发表于 2014-10-30 17:58
多实现,如果出现重复方法,那么子类复写的方法不需要清楚地知道复写的是哪一个,因为不影响编译和运行,结 ...

谢谢!:handshake




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