Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Introduction à la composition | Composition
Programmation Orientée Objet en Python

bookIntroduction à la composition

Glissez pour afficher le menu

La composition représente une relation de type a-un, où une classe contient une instance d'une autre classe au lieu d'en hériter. Par exemple, une Voiture a un Moteur. Cela diffère de l'héritage, qui modélise une relation de type est-un, comme un Camion est un Véhicule.

1234567891011121314151617
class Engine: def start(self): return "Engine started" class Car: def __init__(self, brand, engine): self.brand = brand self.engine = engine # Car HAS an Engine def drive(self): return f"{self.brand}: {self.engine.start()}" engine = Engine() car = Car("Toyota", engine) print(car.drive())
copy

Car n'hérite pas de Engine. À la place, elle contient un objet Engine et l'utilise pour effectuer son travail. Cela montre une relation de type a-un, et non est-un, rendant la conception plus flexible et plus facile à modifier par la suite.

Note
Remarque

Il convient d'utiliser la composition lorsque vous avez besoin de parties flexibles, de frontières claires et de remplacement du comportement à l'exécution. Privilégier l'héritage lorsqu'une hiérarchie vraiment de type est-un est évidente et stable.

question mark

Quel est le principal avantage de l'utilisation de la composition ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 1

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Section 3. Chapitre 1
some-alt