现在的位置: 首页 > 综合 > 正文

Java为什么不使用多继承

2018年01月29日 ⁄ 综合 ⁄ 共 558字 ⁄ 字号 评论关闭

在1995年2月发布的Java白皮书中,James Gosling是这么解释的:

Java中废弃了很多在C++中很少使用、很难应用且很容易混淆的特性,其中,最主要的是:操作符重载、多继承和自动强制转换。

没有人比Java之父James博士更有资格说这句话了。这篇博文将探讨:Java为何不支持多继承。

Java不支持多继承


首先,我们应该确定:我们在进行一个关于Java为什么支持多继承的讨论。

有人觉得,Java实际上使用了Interface(接口)实现了多继承。

其实不然,Java并不支持多继承。如果不相信我所说的,可以看看Java之父James Gosling是怎么说的(博文第一段)。


使用接口可以实现多继承,这个观点实际上是开发者自己想当然的。接口比具体的类更加的灵活,我们可以让一个类派生多个接口;因此,一个类可以同时又用多个模板。


这其实和多继承很像。只不过,不像继承父类一样直接继承父类的方法,派生接口只是获取了接口,接口的方法需要自己实现。


Java是一种简单、面向对象、分布式、易读、鲁棒、安全、结构明晰、可移植、高性能、多线程、动态的语言。


原文地址:

http://javapapers.com/core-java/why-multiple-inheritance-is-not-supported-in-java/

抱歉!评论已关闭.