Quelle est la différence entre l'abstraction et l'héritage

Table des matières:

Anonim

Les différence principale entre abstraction et héritage est que l'abstraction permet de masquer les détails internes et d'afficher uniquement la fonctionnalité aux utilisateurs, tandis que l'héritage permet d'utiliser les propriétés et les méthodes d'une classe déjà existante.

La programmation orientée objet (POO) est un paradigme de programmation majeur. Il permet aux développeurs de modéliser facilement des scénarios du monde réel à l'aide d'un ensemble d'objets. De nombreux langages de programmation modernes tels que Java et C# prennent en charge la POO. La classe et l'objet sont les blocs de construction d'un programme de POO. Une classe est un plan, alors qu'un objet est une instance d'une classe. De plus, il existe des piliers de la POO. Deux d'entre eux sont l'abstraction et l'héritage.

Abstraction, Classe abstraite, Héritage, Interface, Objet, POO

Qu'est-ce que l'abstraction

L'abstraction est la méthodologie consistant à masquer les détails internes et à afficher uniquement la fonctionnalité aux utilisateurs. En d'autres termes, l'utilisateur ou le monde extérieur ne voit pas les détails de l'implémentation interne. Au lieu de cela, il ne voit que la fonctionnalité. Le concept d'abstraction est similaire à l'exemple suivant. Par exemple, supposons une télécommande. Il se compose d'un ensemble de boutons à actionner. L'utilisateur peut changer les canaux, augmenter le volume, changer la luminosité, etc. Il n'a pas besoin de connaître les circuits internes du contrôleur pour fonctionner. L'abstraction est semblable à cela.

Les langages de programmation tels que Java prennent en charge l'abstraction. Le programmeur peut implémenter l'abstraction en utilisant des concepts tels que la classe abstraite et l'interface. Premièrement, une classe abstraite peut être constituée de méthodes abstraites et non abstraites. Une classe qui étend une classe abstraite doit fournir les implémentations des méthodes abstraites. Deuxièmement, une interface est un ensemble de méthodes abstraites. Il n'a pas de méthodes non abstraites. Par conséquent, la classe qui implémente une interface doit fournir les implémentations ou les définitions de méthode à toutes les méthodes abstraites de l'interface. Globalement, l'abstraction permet de réduire la complexité du système.

Qu'est-ce que l'héritage

L'héritage est la méthodologie consistant à utiliser les propriétés et les méthodes d'une classe déjà existante dans une nouvelle classe. La classe existante est le parent ou la superclasse tandis que la nouvelle classe est l'enfant ou la sous-classe. Le développeur n'a pas à écrire le code depuis le début. Au lieu de cela, il peut utiliser le code déjà existant et développer le reste. Par conséquent, l'héritage permet la réutilisation du code.

Il existe différents types d'héritage. Ils sont les suivants.

Héritage à un seul niveau – Si A et B sont deux classes et que B hérite de A, alors il s'agit d'un héritage à un seul niveau.

Héritage à plusieurs niveaux – Il y a une classe intermédiaire. Il existe trois classes appelées A, B et C. B hérite de A et C hérite de B.

Héritage multiple – Si A, B et C sont trois classes, et si C hérite à la fois de A et de B, alors il s'agit d'un héritage multiple.

Héritage hiérarchique – Lorsque A, B et C sont trois classes et que B et C héritent de A, il s'agit alors d'un héritage hiérarchique.

Héritage hybride – C'est une combinaison d'héritages à plusieurs niveaux et multiples.

Différence entre abstraction et héritage

Définition

L'abstraction est un concept de POO qui masque les détails de l'implémentation et montre uniquement la fonctionnalité à l'utilisateur. En revanche, l'héritage est la méthodologie de création d'une nouvelle classe en utilisant les propriétés et les méthodes d'une classe existante. Ainsi, cela reflète la principale différence entre l'abstraction et l'héritage.

Utilisation principale

Conclusion

Dans l'ensemble, l'abstraction et l'héritage sont des concepts de POO entièrement différents, et ils fournissent des utilisations différentes. le différence principale entre l'abstraction et l'héritage est que l'abstraction permet de masquer les détails internes et d'afficher uniquement la fonctionnalité aux utilisateurs, tandis que l'héritage permet d'utiliser les propriétés et les méthodes d'une classe déjà existante.

Les références:

1. "Héritage en Java - Javatpoint." Www.javatpoint.com, disponible ici. 2. "Classe abstraite en Java - Javatpoint." Www.javatpoint.com, disponible ici.

Image de courtoisie:

1. "diagramme d'héritage" de Pluke - Travail personnel (CC0) via Commons Wikimedia.

Quelle est la différence entre l'abstraction et l'héritage