広告スペース(バナー)
🐍Python レッスン
基本文法の基礎8▾
データ構造とオブジェクト指向8▾
構文の基本を深める9▾
関数とデータ構造の応用9▾
アルゴリズムとテストの基礎8▾
文字列・数値操作の応用8▾
実務で役立つ機能8▾
レッスン 17 / 69
継承(クラスの拡張)
このレッスンでは、Pythonでクラスを継承する書き方を学び、共通の機能を持つクラスを効率よく設計できるようになることを目標にします。「Python クラス 継承」「Python class 親クラス」で調べている方向けです。
class 子クラス名(親クラス名):と書くと、親クラスの機能を引き継いだ新しいクラスを作れます。これを継承と呼びます。「動物」という共通の設計図をもとに、「犬」「猫」のようにそれぞれ独自の鳴き方を追加していくイメージです。
サンプルコードでは、Animalクラスを親としてDogクラスを継承しています。Dogクラスではspeak()メソッドを独自に定義し直しており、これを「オーバーライド(上書き)」と呼びます。Dog("ポチ")で作ったインスタンスは、Animalから引き継いだname属性と、Dog独自のspeak()の両方を持っています。
初心者がよくつまずくのが、子クラスで独自の__init__を定義する場合に、親クラスの初期化処理を呼び出すsuper().__init__()を書き忘れることです。親クラスの属性を正しく引き継ぐためには、この呼び出しが必要になる場面が多くあります。
すでにあるクラスの機能をそのまま流用しながら、必要な部分だけを書き換えられるため、コードの重複を減らせるオブジェクト指向の代表的なテクニックです。大規模なアプリケーションの設計でも重要な考え方として活用されています。
Python
OUTPUT / 実行結果
💡 初回実行時はPythonエンジンの読み込みに数秒かかります。
🎯
ここまでできればゴール達成!
犬・猫のように、種類ごとに動物を管理するプログラムが作れるようになります。
犬・猫のように、種類ごとに動物を管理するプログラムが作れるようになります。
広告スペース(バナー)
広告スペース(記事内)