Да, название в значительной степени описывает вопрос.Почему Java не поддерживает множественное наследование?
Есть ли какие-либо преимущества для того, чтобы не допускать множественного наследования на языке программирования?
Да, название в значительной степени описывает вопрос.Почему Java не поддерживает множественное наследование?
Есть ли какие-либо преимущества для того, чтобы не допускать множественного наследования на языке программирования?
Это устраняет возможность так называемой «проблемы с алмазами» (http://en.wikipedia.org/wiki/Multiple_inheritance#The_diamond_problem), которая может возникнуть, когда класс наследует от двух классов, имеющих разные реализации методов с одним и тем же именем.
Java вместо этого имеет интерфейсы. Класс может реализовать любое количество интерфейсов, и вы можете использовать ссылку типа интерфейса для ссылки на любой объект класса, который реализует этот интерфейс. Интерфейсы не содержат реализаций и не могут быть созданы.
Потому что так оно и было спроектировано. :) –
Одна потенциальная проблема: http://en.wikipedia.org/wiki/Multiple_inheritance#The_diamond_problem – Ben
Оформить заказ в этой статье: http://javarevisited.blogspot.com/2011/07/why-multiple-inheritances-are-not .html –