こんばんは、今日はsuper( )という関数を紹介します。


オーバーライドしたメソッドの中で「super()」とすることで、親クラスを呼び出すことができます。
また「super().メソッド名()」とすることで、親クラス内に定義されたインスタンスメソッドをそのまま利用することが可能です。

オーバーライドとは親クラスの上書きです。

class Food(MenwItem):
    def __init__(self,name,price,calorie):
        super().__init__(name,price)
        #親クラスのinitメッソドを利用
    self.calorie =calorie

というような感じです。super( )を用いることで何回も同じコード書かなくてよくなります。

まぁけど少しこの辺りは難しい内容だと思います。ちなみに、

親クラスは、スーパークラス、基底クラス

子クラスは、サブクラス、派生クラスとも言うので覚えておいてください。

オーバーライドと一緒に伝承もあるからややこしいですが、徐々に覚えればいいと思います。

伝承は、使いたい既存のクラス(親クラス)のコードをまるまる新しいクラス(子クラス)に引き継がせることです。

伝承とオーバーライドを使って、元となる親クラスのコードを書き換えずに、既に定義されている大規模なクラスのコードをそのままにした状態でそのクラスが持つ機能をまるまる使うことができます。さらに、オーバーライドによって継承したクラスのメソッドを自分の使いやすいように、好きなように書き換えることもできるということです。