Множественное наследование в программировании — это возможность объекта или класса наследовать свойства от более чем одного родительского объекта или класса. 24 В отличие от единственного наследования, при котором объект или класс может наследоваться только от одного объекта или класса. 2
Некоторые языки, поддерживающие множественное наследование: C++, Common Lisp, EuLisp, Curl, Dylan, Eiffel, Logtalk, Object REXX, Scala, OCaml, Perl, POP-11, Python, R, Raku, Tcl. 4
Однако у множественного наследования есть и недостатки: оно увеличивает сложность и неоднозначность в ситуациях, например, когда неясно, от какого родительского класса наследуется определённая функция, если её реализует более чем один класс. 24
Например, в Java для достижения множественного наследования через интерфейс класс реализует несколько интерфейсов или когда один интерфейс расширяет другие интерфейсы. 2