Python での継承
継承は、python の核となる オブジェクト指向プログラミング概念の 1 つであり、新しいクラス (サブクラス) が既存のクラス (親クラス) から継承できるようにします。 ). ) はプロパティとメソッドを継承します。継承を通じて、サブクラスは親クラスの機能を再利用し、これに基づいて拡張することができるため、コードの再利用と分離が実現します。
サブクラスの作成
サブクラスを作成するには、キーワード class
を使用し、その後にサブクラスの名前と親クラスの名前をコロンで区切って指定する必要があります。例えば:###
リーリー
メソッドのオーバーライド
サブクラスは、親クラスのメソッドをオーバーライドして、独自の特定の動作を実現できます。親クラスのメソッドをオーバーライドする場合、同じ名前とパラメータを持つメソッドを子クラスに定義するだけで済みます。例えば:### リーリー ポリモーフィズムポリモーフィズムとは、同じメッセージが異なるオブジェクトに応じて異なる動作を生成できることを意味します。
Pythonでは、継承とメソッドのオーバーライドを通じてポリモーフィズムを実現できます。
親クラスの抽象メソッド親クラスは抽象メソッドを定義できます。これらのメソッドには実装がありませんが、サブクラスによって実装されます。抽象メソッドの宣言には、
@abstractmethod デコレータを使用する必要があります。例えば:###
リーリー
サブクラスのポリモーフィック実装
サブクラスが抽象メソッドを実装する場合、親クラスのメソッドが正しく呼び出されるように、super()
関数を使用して親クラスのメソッドを明示的に呼び出す必要があります。例えば:### リーリーポリモーフィックなアプリケーション シナリオ
ポリモーフィズムはオブジェクト指向プログラミングで広く使用されています。一般的なシナリオは次のとおりです:
GUI アプリケーションでのイベント処理では、異なるタイプの GUI コントロールが同じイベントに応答できますが、異なる動作を生成します。
合成と継承の組み合わせ:
場合によっては、継承より合成の方が適切な場合があります。合成により、オブジェクトには、プロパティやメソッドを継承せずに、他のオブジェクトへの参照を含めることができます。以上がPython の継承とポリモーフィズム: 優れたコードの作成を進める方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。