为什么java不支持多重继承,尽管默认情况下所有java方法都是虚拟的?

Amr*_*ndu 1 java diamond-problem

为什么Java不支持多重继承,尽管默认情况下所有java方法都是虚拟的?为什么Java会出现钻石问题?

rus*_*key 5

James Gosling(被称为Java的"父亲")说:

JAVA省略了许多很少使用,知之甚少,令人困惑的C++特性,这些特性在我们的经验中带来了比利益更多的悲伤.这主要包括运算符重载(尽管它确实有方法重载),多重继承和广泛的自动强制.

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

所以根据他的说法,他们根本不想添加它,因为他们认为这是一个坏主意.

PS使用多个接口与多重继承不同.