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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

如题,Java为什么不像C++那样允许实现多继承???

10 个回复

倒序浏览
如果支持多继承,多个父类中有相同的方法,在子类中就会有调用不明确的情况。换句话说,现实生活中也没有一个人有多个爸爸的情况啊——干爹的不算哈,干爹算实现了接口。
回复 使用道具 举报
Java8 里其实用 default 方法实现了多继承。。。
回复 使用道具 举报
day05第八个视频O(∩_∩)O哈!_面向对象(Java中类的继承特点)
* A:Java中类的继承特点
#        * a:Java只支持单继承,不支持多继承。(一个儿子只能有一个亲爹).多会出现安全隐患.(例如两子类的方法名相同的时候,由父类调用方法,就不知道调用那个方法了,)
回复 使用道具 举报
cat73 发表于 2016-7-5 19:18
Java8 里其实用 default 方法实现了多继承。。。

刚刚试验了一下,不是呢,当一个类同时实现两个接口且两个接口有同样的default方法的时候,子类需要自己重写该方法....
回复 使用道具 举报
上面搞错了..是day08..第五个视频{:2_36:}
回复 使用道具 举报
cat73 黑马帝 2016-7-5 19:33:14
7#
hlhdidi 发表于 2016-7-5 19:24
刚刚试验了一下,不是呢,当一个类同时实现两个接口且两个接口有同样的default方法的时候,子类需要自己重写 ...

但是不重复的情况下可以从多个接口继承多个实现呀
回复 使用道具 举报
cat73 发表于 2016-7-5 19:33
但是不重复的情况下可以从多个接口继承多个实现呀

那倒是...

点评

可以算是有一点小小的限制的多继承咯  发表于 2016-7-5 19:57
回复 使用道具 举报
这就是为什么要有c++和java了   
回复 使用道具 举报
由于多继承可以引起继承结构的混乱,而且会大大降低程序的可理解性,所以JAVA只支持单继承,但在接口中可以实现多继承
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马