Différence entre Héritage et Composition
Bien que l’héritage et la composition permettent la réutilisation du code, la principale différence entre la composition et l’héritage réside dans le fait que la composition permet la réutilisation du code sans hériter la classe mère, mais pour l’héritage vous devez hériter la classe mère pour toute réutilisation de code ou de fonctionnalité. Une autre différence qui découle de ce fait est que, en utilisant la composition, vous pouvez réutiliser du code pour une classe finale, ce qui n’est pas extensible, mais l’Héritage ne peut pas réutiliser le code dans de tels cas. Également en utilisant la composition, vous pouvez réutiliser le code de nombreuses classes car elles sont déclarées comme une simple variable membre, mais avec l’héritage, vous pouvez réutiliser le code d’une seule classe car en Java ou en PHP ou dans quelque d’autre langage de programmation, vous ne pouvez hériter qu’une seule classe. Vous pouvez le faire en C ++ car une classe peut hériter plusieurs classes. Ainsi, vous devriez toujours préférer la composition à l’héritage.
Une autre différence : Composition signifie A UN, Héritage signifie EST UN
Exemple : Voiture a un moteur | Voiture est une automobile
Nous pouvons représenté çà par le programme suivant:
class Moteur {} //La classe Moteur. class Automobile {} //La classe Automobile qui est la classe mère de la classe Voiture. class Voiture extends Automobile { //La voiture est une automobile, donc la classe Voiture hérite la classe Automobile. private Moteur moteur; //Voiture a un moteur donc, la classe Voiture a une instance de la classe Moteur en tant que membre. }
Différences clés entre Héritage et Composition
Composition – a-une relation entre les objets.
Héritage – est-une relation entre les classes.
Composition – L’objet de composition contient une référence aux classes de composition et la relation est donc vaguement liée.
Héritage – L’objet de la classe fille porte la définition de la classe mère en soi et donc étroitement liée.
Composition – Utilisé en injection de dépendance
Héritage – Utilisé dans le polymorphisme
Composition – Les objets peuvent être composés au sein de plusieurs classes.
Héritage – Une classe ne peut hériter que d’une seule classe.
Conclusion
Voila, c’est tout concernant la différence entre l’héritage et la composition en Java et en POO. La composition offre un meilleur moyen de réutiliser le code. Parfois l’héritage est nécessaire, principalement quand vous créez une classe de la même famille.
Merci sa ma vraiment aider a comprendre le java et si je peut avoir en pdf