継承元のコンストラクタをオーバラーライドする
class Parent:
def __init__(self, a, b):
self.a = a
self.b = b
def w(self):
print(self.b)
class Child(Parent):
def w(self):
return super().w()
child = Child(0, 'hello')
child.w()
サブクラスで__init__を定義すると親クラスの上書きされてしまう。
class A:
def __init__(self, name):
self.name = name
class B(A):
def __init__(self, name, mail):
super().__init__(name)
self.mail = mail
b = B("yamada", "gmail")
b.name
class Parent:
def __init__(self, name, age):
self.name = name
self.age = age
def my_name(self):
print("名前は" + self.name + "。年齢は" + str(self.age) + "歳。")
class Child(Parent):
def __init__(self, name, age):
super().__init__(name, age)
yamada = Child("yamada", 20)
yamada.my_name()