Python の クラスの継承について
継承
クラスを継承するには、「class クラス名(親クラス名)」とします。
クラスを継承すると、親クラスのメソッドは、子クラスでも使用することができます。
class myClass: # 基底クラス(親) def say(self): print("Hey") class myClass2(myClass): # 派生クラス(子) def hello(self): print("Hello") m = myClass2() m.say() m.hello()
Hey Hello
オーバーライド
親クラスと同じ名前のメソッドを定義すると メソッドの上書き(オーバーライド)ができます。
class myClass: # 基底クラス(親) def say(self): print("Hey") class myClass2(myClass): # 派生クラス(子) def say(self): # オーバーライド print("Hello") m = myClass2() m.say()
Hello
子クラスから 上書き前の 親クラスのメソッドを呼び出すには super() を使います。
class myClass: # 基底クラス(親) def say(self): print("Hey") class myClass2(myClass): # 派生クラス(子) def say(self): super().say() # print("Hello") m = myClass2() m.say()
Hey Hello