Différence entre l'héritage multiple et à plusieurs niveaux

Différence entre l'héritage multiple et à plusieurs niveaux

Différence clé - Héritage multiple vs à plusieurs niveaux
 

La programmation orientée objet (OOP) est un paradigme pour concevoir un programme en utilisant des classes et des méthodes. Les scénarios du monde réel peuvent être mappés sur des objets. Par conséquent, il est facile de créer des solutions logicielles. Une classe est un plan pour construire un objet. Il contient des propriétés et des méthodes. Par exemple, avant de créer un objet étudiant, il devrait y avoir un étudiant de classe avec des propriétés et des méthodes. Un étudiant peut avoir des propriétés telles que l'identification des étudiants, le nom et les méthodes telles que lire, écrire, étudier. Les méthodes décrivent le comportement tandis que les propriétés sont les attributs.  Après avoir créé la classe, il est possible de créer des objets en les utilisant. La création d'objets est également connue sous le nom d'instanciation d'objet. L'objet n'existe pas isolément. Ils communiquent avec d'autres objets et les données sont passées dans les objets. Un pilier de la POO est l'héritage. Le but de l'héritage est d'augmenter la réutilisabilité du code. Il crée une nouvelle classe de propriétés et de méthodes de la classe déjà existante. La classe existante est connue sous le nom de classe de base, et la nouvelle classe est appelée la classe dérivée. L'héritage multiple et l'héritage à plusieurs niveaux sont les types d'héritage. Cet article traite de la différence entre eux. Le différence clé entre l'héritage multiple et multiniveaux L'héritage multiple est lorsqu'une classe hérite de nombreuses classes de base tandis que l'héritage à plusieurs niveaux est lorsqu'une classe hérite d'une classe dérivée faisant cette classe dérivée une classe de base pour une nouvelle classe.

CONTENU

1. Aperçu et différence clé
2. Quel est l'héritage multiple
3. Qu'est-ce que l'héritage à plusieurs niveaux
4. Similitudes entre l'héritage multiple et à plusieurs niveaux
5. Comparaison côte à côte - héritage multiple vs à plusieurs niveaux sous forme tabulaire
6. Résumé

Quel est l'héritage multiple?

L'héritage multiple est lorsqu'une classe hérite de plus d'une classe de base.

Figure 01: Héritage multiple

A B et C sont des cours. A et B sont des classes de base, et C est la classe dérivée. La classe C doit gérer la dépendance des deux classes de base A et B. Les héritages multiples ne sont pas largement utilisés dans les projets logiciels. Cela rend le système plus complexe car une classe hérite de nombreuses classes.

Par exemple, supposons que la classe A et B ont toutes deux une méthode avec le même nom qui est la somme () et la classe C dérive les deux classes. Après avoir créé un objet de type C et une méthode d'appel SUM (), cela peut provoquer une erreur car les deux classes ont la même méthode. Le compilateur ne sait pas quelle fonction appelle. Par conséquent, l'héritage multiple augmente la complexité d'un système. L'héritage multiple est pris en charge dans la langue C ++ mais des langues telles que Java, C # ne prennent pas en charge l'héritage multiple. Au lieu de cela, ces langues utilisent une interface similaire à une classe mais ne peuvent pas être instanciées.

Qu'est-ce que l'héritage à plusieurs niveaux?

L'héritage à plusieurs niveaux est lorsqu'une classe hérite d'une classe dérivée faisant cette classe dérivée une classe de base pour une nouvelle classe.

Figure 02: Héritage à plusieurs niveaux

L'héritage à plusieurs niveaux a trois niveaux. La classe intermédiaire qui hérite de la classe A et de la classe C hérite de la classe B. A est la classe de base pour B et B est la classe de base pour C.

Un programme qui met en œuvre l'héritage à plusieurs niveaux est le suivant. Le programme est écrit en utilisant Java.

Figure 03: Programme qui met en œuvre l'héritage à plusieurs niveaux

Selon le programme ci-dessus, la classe A est la classe de base de la classe B. La classe B est la classe de base pour la classe C. Toutes les propriétés et méthodes de classe A sont accessibles par la classe B. Toutes les propriétés et méthodes de classe B sont accessibles par la classe C.  Par conséquent, la classe C peut accéder aux propriétés et aux méthodes de A et B. Lors de la création d'un objet de type C, il est possible d'appeler les trois méthode a (), b () et c (). La sortie donnera A, B, C.

Quelle est la similitude entre l'héritage multiple et à plusieurs niveaux?

  • Les deux sont des types d'héritage.

Quelle est la différence entre l'héritage multiple et à plusieurs niveaux?

Héritage multiple vs héritage à plusieurs niveaux

L'héritage multiple est un type d'héritage où une classe hérite de plus d'une classe de base. L'héritage à plusieurs niveaux est un type d'héritage qui hérite d'une classe dérivée, faisant de cette classe dérivée une classe de base pour une nouvelle classe.
 Usage
L'héritage multiple n'est pas largement utilisé car il rend le système plus complexe. L'héritage à plusieurs niveaux est largement utilisé.
Niveaux de classe
L'héritage multiple a deux niveaux de classe à savoir la classe de base et la classe dérivée. L'héritage à plusieurs niveaux a trois niveaux de classe, à savoir la classe de base, la classe intermédiaire et la classe dérivée.

Résumé - Héritage multiple vs à plusieurs niveaux

L'héritage est un pilier majeur de programmation orientée objet. Il existe différents types d'héritage; Ils sont un héritage à un niveau, un héritage à plusieurs niveaux, un héritage multiple, un héritage hiérarchique et un héritage hybride. L'héritage unique a une classe de base et une classe dérivée. L'héritage hiérarchique a une classe de base et de nombreuses classes dérivées. L'héritage hybride est une combinaison d'hérédité à plusieurs niveaux et multiples. Cet article a décrit la différence entre l'héritage multiple et l'héritage à plusieurs niveaux. La différence entre les héritages multiples et à plusieurs niveaux est que l'héritage multiple est lorsqu'une classe hérite de nombreuses classes de base tandis que l'héritage à plusieurs niveaux est lorsqu'une classe hérite d'une classe dérivée, faisant de cette classe dérivée une classe de base pour une nouvelle classe. L'héritage à plusieurs niveaux est largement utilisé que l'héritage multiple.

Téléchargez l'héritage PDF multiple contre plusieurs niveaux

Vous pouvez télécharger la version PDF de cet article et l'utiliser à des fins hors ligne selon la note de citation. Veuillez télécharger la version PDF ici différence entre l'héritage multiple et multiniveaux

Référence:

1.Singh, Chaitanya, et al. «Types d'héritage en Java: célibataire, multiple, multiniveau et hybride.”Beginnersbook.com, 6 décembre. 2013. Disponible ici
2.tutorielpoint.com. «L'héritage de Java." Le point. Disponible ici 

Image gracieuseté:

1.'Multiple héritage' par suman maverrick gangulian suman420 - propre travail, (cc by 3.0) via Commons Wikimedia 
2.Auteur de l'héritage à plusieurs niveaux: Suman Maverick Gangulian Suman420 (Talk) 12:03, 2 mars 2015 (UTC) - Propre travaux, (CC par 3.0) via Commons Wikimedia