Поиск…


Проблема с алмазом - пример

Проблема с алмазом - общая проблема, возникающая в объектно-ориентированном программировании, при использовании multiple-inheritance .

Рассмотрим случай, когда class C наследуется от class A и class B Предположим, что оба class A и class B имеют метод foo() .

Затем, когда мы вызываем метод foo() , компилятор не может определить точный метод, который мы пытаемся использовать

  • foo() из class A
  • foo() из class B

В основном это называется проблемой алмаза. Есть несколько вариантов этой проблемы. Чтобы этого избежать, существует несколько подходов. Java не допускает множественного наследования. Поэтому проблему избегают. Но C ++ допускает множественное наследование, поэтому вы должны быть осторожны с использованием множественного наследования.



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow