抽象クラスと設計図
メニューを表示するにはスワイプしてください
抽象基底クラス(ABC)は、Pythonで柔軟かつ堅牢なオブジェクト指向システムを設計するための強力なツール。サブクラスが従うべき明確な契約を定義することで、保守性の高いコードの作成を支援。
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は抽象基底クラス。すべての支払いタイプが実装しなければならない必須メソッドpayを定義。CreditCardとPayPalは具象サブクラスであり、それぞれ独自のpayメソッドを提供しつつ、同じインターフェースに従う。
注意
関数 process_payment は、特定のクラスではなく、共通の抽象契約に依存しているため、どの支払い方法にも対応可能。
すべて明確でしたか?
フィードバックありがとうございます!
セクション 2. 章 6
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
セクション 2. 章 6