Abstrakte Klassen und Blaupausen
Swipe um das Menü anzuzeigen
Abstrakte Basisklassen (ABCs) sind ein leistungsstarkes Werkzeug in Python zur Gestaltung flexibler und robuster objektorientierter Systeme. Sie unterstützen die Erstellung von wartbarem Code, indem sie klare Verträge definieren, denen Unterklassen folgen müssen.
123456789101112131415161718192021222324from 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))
PaymentMethod ist eine abstrakte Basisklasse. Sie definiert eine erforderliche Methode, pay, die von jedem Zahlungstyp implementiert werden muss. CreditCard und PayPal sind konkrete Unterklassen. Sie stellen jeweils eigene Versionen der Methode pay bereit, folgen jedoch derselben Schnittstelle.
Die Funktion process_payment funktioniert mit jeder Zahlungsmethode, da sie sich auf den gemeinsamen abstrakten Vertrag stützt und nicht auf spezifische Klassen.
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen