__init__ で親の初期化を呼んで名前を引き継ぎ、犬種(breed)も持たせて「ポチ(柴犬)」と表示しよう。super() を使うと、子クラスの中から親クラスのメソッドを呼び出せます。親の初期化を再利用しつつ、子で新しい属性を足せます。class Vehicle:
def __init__(self, wheels):
self.wheels = wheels
class Car(Vehicle):
def __init__(self, wheels, brand):
super().__init__(wheels) ← 親の __init__ を呼ぶ
self.brand = brandsuper().__init__() には、親が必要としている引数だけを渡します。Dog の __init__(引数は name と breed)の中身を書くAnimal)の初期化を呼んで、name を引き継がせるself.breed として自分に持たせるinfo が self.name と self.breed の両方を使うので、2つとも必要super().__init__() を呼ぶのが定番の作法です。super().__init__() で親クラスの初期化を実行できるself.breed など)を追加するポチ(柴犬)
全問正解でクエストクリア!
問題 1: Car(Vehicle)クラスでsuper().__init__(brand)を使って「トヨタ:プリウス」と表示しよう!
問題 2: 親のgreet()をsuper()で呼び出して、さらに独自のメッセージも表示しよう!
問題 3: Hero(Character)でsuper()を使ってhpとmpを持つキャラを作り、ステータスを表示しよう!