[Python 100日チャレンジ] Day 36 - メソッドオーバーライド
Pythonのメソッドオーバーライドで、親クラスの振る舞いを子クラスで上書きする方法を学びます。
[Python 100日チャレンジ] Day 36 - メソッドオーバーライド
オーバーライドとは
子クラスで親クラスと同じ名前のメソッドを定義すると、子クラス側の処理が優先されます。これをオーバーライドと呼びます。
1
2
3
4
5
6
7
class Animal:
def speak(self):
print("...")
class Dog(Animal):
def speak(self):
print("Woof")
superと組み合わせる
親クラスの処理を使いながら、子クラスで処理を追加することもできます。
1
2
3
4
class AdminUser(User):
def describe(self):
super().describe()
print("管理者です")
多重継承は慎重に
Pythonでは複数のクラスを継承できますが、関係が複雑になりやすいです。まずは単一継承をしっかり使えるようにしましょう。
今日のゴール
オーバーライドは、共通の形を保ちながら具体的な振る舞いを変える方法です。親と子の責務を意識して使いましょう。
この投稿は投稿者によって CC BY 4.0 の下でライセンスされています。
