2014-02-07 4 views
-5

Да, название в значительной степени описывает вопрос.Почему Java не поддерживает множественное наследование?

Есть ли какие-либо преимущества для того, чтобы не допускать множественного наследования на языке программирования?

+0

Потому что так оно и было спроектировано. :) –

+1

Одна потенциальная проблема: http://en.wikipedia.org/wiki/Multiple_inheritance#The_diamond_problem – Ben

+0

Оформить заказ в этой статье: http://javarevisited.blogspot.com/2011/07/why-multiple-inheritances-are-not .html –

ответ

1

Это устраняет возможность так называемой «проблемы с алмазами» (http://en.wikipedia.org/wiki/Multiple_inheritance#The_diamond_problem), которая может возникнуть, когда класс наследует от двух классов, имеющих разные реализации методов с одним и тем же именем.

Java вместо этого имеет интерфейсы. Класс может реализовать любое количество интерфейсов, и вы можете использовать ссылку типа интерфейса для ссылки на любой объект класса, который реализует этот интерфейс. Интерфейсы не содержат реализаций и не могут быть созданы.

Смежные вопросы