スーパークラス(親クラス)のメソッドをサブクラス(子クラス)のメソッドで上書きする方法
サブクラス(子クラス)でスーパークラス(親クラス)のメソッドを上書き(オーバーライド)するには、次のステップを実行します。
- スーパークラスを定義します。
python
class Superclass: def some_method(self): print("スーパークラスのメソッド")
- スーパークラスを継承するサブクラスを定義します。サブクラス内で、スーパークラスのメソッドを上書きする新しいメソッドを定義します。この新しいメソッドはスーパークラスと同じ名前で定義される必要があります。
python
class Subclass(Superclass): def some_method(self): # スーパークラスのメソッドを上書き print("サブクラスのメソッド")
- サブクラスのインスタンスを作成し、メソッドを呼び出します。このとき、サブクラスのメソッドが呼び出されます。
python
obj = Subclass() obj.some_method() # サブクラスのメソッドが呼び出される
このプロセスにより、サブクラスはスーパークラスのメソッドを上書きし、新しい実装を提供します。スーパークラスのメソッドを上書きすることにより、オブジェクト指向プログラミングのポリモーフィズムの原則が実現され、サブクラスはスーパークラスと同じインターフェースを提供しながら異なる動作を実現できます。
サブクラスでスーパークラスのメソッドを呼び出したい場合、super() 関数を使用して、スーパークラスのメソッドを明示的に呼び出すことも可能です。たとえば、super().some_method() を使用してスーパークラスのメソッドを呼び出すことができます。

ディスカッション
コメント一覧
まだ、コメントがありません