A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始


   我想的原因是

   接口是为了给对象添加属性或者行为的;而继承是指从父类中完全自由的获取实现。
    主要是因为多继承是一种容易混淆,复杂的语言特性。
   其次,java语言是一门务求简单的语言,所以设计之初便摒弃了多继承。
       不知各位还有无补充?

37 个回复

倒序浏览
1,接口可以继承多个接口。为什么不能实现类的多继承?主要是防止多个类有相同的方法名,然而方法体不一样,子类就比较难选择了。所以java和C#不支持类的多继承 2,允许具有多个接口的一个好处就是,当实现多个接口时,如果两个接口有同样的方法,那么实现一次就可以了。由于接口没有方法体,所以接口可以实现多继承。
回复 使用道具 举报
学习了,2楼回答的好
回复 使用道具 举报
要是支持多继承的话,如果两个父类都有同一个方法名,构成了覆盖关系,子类该用哪个?接口实现的话子类必须重写那个方法。
回复 使用道具 举报

2楼回答的挺好的
回复 使用道具 举报
2楼说的很对,在使用的时候,多继承的话,多个父类可能会出现相同的方法,子类在调用该同名方法时时,就不能确定是哪一个了。而接口中只有方法的声明,没有方法体,子类需要重写接口中的方法,调用的就是子类重写的方法,这样的话,就可以一次重写,多次实现了。
回复 使用道具 举报
受益匪浅,谢谢大家
回复 使用道具 举报
我想,应该是:  接口 是一种回调,即在 触发某种特定动作是,才执行,, 一段代码,可以触发多种动作,所以可以实现多个接口。 不知道有没有帮助到你
回复 使用道具 举报
一个儿子可以有两个爸嘛
回复 使用道具 举报
java只支持单继承, 不支持多继承,但是可以多层继承.  接口更多是的像多态 , 哪里需要就在哪里实现
回复 使用道具 举报
学习到了 很棒!
回复 使用道具 举报
路过,进来看看
回复 使用道具 举报
单继承可以理解成只有一个亲爹,多实现可以理解为有多个干爹。
这样也是为了提高java语言的安全性,同时多实现又弥补了不能多继承这个缺点。
回复 使用道具 举报
mlxg 中级黑马 2015-11-26 00:15:50
14#
赞一个!!!
回复 使用道具 举报
一个人走天下 发表于 2015-11-25 22:48
一个儿子可以有两个爸嘛

可以有一个爸和妈呀
回复 使用道具 举报
yqlbd 发表于 2015-11-25 14:46
要是支持多继承的话,如果两个父类都有同一个方法名,构成了覆盖关系,子类该用哪个?接口实现的话子类必须 ...

为了避免出现继承同一方法的情况。这一点说的好, 毕竟Java是一门简单的语言。务求不复杂,其实C++是支持多继承的。
回复 使用道具 举报
类与类之间低耦合,高内聚。接口是事物的扩展性。
回复 使用道具 举报
继承是is a  的关系实现是like a 的关系
回复 使用道具 举报
学习了 !!!
回复 使用道具 举报
zqiang 中级黑马 2015-11-26 20:25:46
20#
不错,学习了
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马