Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Classes Abstraites et Plans | Héritage
Programmation Orientée Objet en Python

bookClasses Abstraites et Plans

Glissez pour afficher le menu

Classes de base abstraites (ABCs), outil puissant en Python pour la conception de systèmes orientés objet flexibles et robustes. Contribution à la création de code maintenable par la définition de contrats clairs que les sous-classes doivent respecter.

123456789101112131415161718192021222324
from abc import ABC, abstractmethod class PaymentMethod(ABC): @abstractmethod def pay(self, amount): pass class CreditCard(PaymentMethod): def pay(self, amount): return f"Paid {amount} using Credit Card" class PayPal(PaymentMethod): def pay(self, amount): return f"Paid {amount} using PayPal" def process_payment(method: PaymentMethod, amount): return method.pay(amount) print(process_payment(CreditCard(), 100)) print(process_payment(PayPal(), 250))
copy

PaymentMethod, classe de base abstraite. Définition d'une méthode obligatoire, pay, que chaque type de paiement doit implémenter. CreditCard et PayPal, sous-classes concrètes. Fourniture de leurs propres versions de la méthode pay, tout en respectant la même interface.

Note
Remarque

La fonction process_payment fonctionne avec n'importe quelle méthode de paiement car elle repose sur le contrat abstrait commun, et non sur des classes spécifiques.

question mark

Quelle est la principale différence entre une classe abstraite et une classe concrète ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 6

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 2. Chapitre 6
some-alt