L'héritage multiple, en parlant de la programmation orientée objet (POO) langues, est un terme qui renvoie à une classe qui hérite des fonctionnalités de plus d'une classe parente. Le terme ne peut être pleinement compris sans comprendre ce qu'est une classe. Une définition très brève d'une classe est un ensemble d'instructions de programmation ou de code dans un langage de programmation orientée objet qui décrit et est l'essence d'une entité. Les classes définissent toutes les propriétés d'une entité et contient toutes les méthodes nécessaires pour manipuler ces propriétés.
Selon le programme qui est en cours de codage, il pourrait y avoir un besoin d'écrire beaucoup de classes qui ont des choses en commun mais doivent rester des entités distinctes. C'est là l'héritage multiple entre en scène. Par exemple, les progrès technologiques qui permettent la construction d'un sous-marin qui pouvait voler comme un avion ou un avion qui pourrait plonger comme un sous-marin serait un produit hybride. Cet hybride aurait quelques-uns des mêmes propriétés que l'avion a et certaines des propriétés d'un sous-marin, mais ce serait un produit unique ou une entité. L'héritage multiple pourrait facilement permettre à l'hybride d'hériter des fonctionnalités d'une classe d'avion et les fonctionnalités d'une classe de sous-marins dans le même temps, sans copier le code.
Une autre façon d'expliquer l'héritage multiple-à-dire qu'il permet à plus d'une classe d'agir en tant que base pour les autres classes. Il ya des avantages à utiliser l'héritage multiple au lieu de simplement copier le code à partir d'une ou plusieurs classes à l'autre. Bugs dans les programmes prennent souvent du temps à découvrir, mais quand ils sont découverts, ils doivent être corrigés dès que possible. Si le code contenant des bogues est copié à plusieurs classes, les programmeurs doivent appliquer le correctif même à chaque copie du code. Lorsque l'héritage multiple est utilisée, cependant, il ou elle devra travailler avec le code de la classe d'origine seulement à partir de laquelle toutes les sous-classes héritent de fonctionnalités.
Les langages de programmation n'ont pas tous en charge l'héritage multiple, même si elles soutiennent l'orientation objet. Certaines versions de certaines langues peuvent être réclamées pour le soutenir alors qu'en réalité ils en charge l'héritage de seulement deux classes. Les classes à partir de laquelle les autres classes héritent des fonctionnalités sont souvent désignés comme des «mères» des classes ou des "classes" super, et les classes qui héritent sont appelés «enfants» des classes ou sous-classes "." Les programmeurs qui souhaitent travailler avec des classes de cette manière est fortement conseillé de d'abord acquérir une solide connaissance des bases de classes avant de tenter de tirer parti de la puissance de l'héritage multiple, parce que les erreurs ou les mauvaises pratiques de codage dans la classe parent sont transmises à la classe de l'enfant