\

Pythonのクラスを学ぶ際に、selfsuperは重要な概念です。これらの理解は、Pythonのオブジェクト指向プログラミングの基礎を理解するために不可欠です。

selfとは何か

Pythonでは、インスタンスのメソッドを呼び出すとき、そのインスタンス自体が第一引数として渡されます。これをselfという変数で受け取ることが一般的です。つまり、selfはインスタンス自体を指すものです。

__init__メソッドとは何か

__init__メソッドは、クラスがインスタンス化されたときに自動的に実行される特別なメソッドです。このメソッドは通常、インスタンス変数の定義に使用されます。

superとは何か

superは、子クラスから親クラスのメソッドを呼び出すために使用されます。これは、親クラスのメソッドをオーバーライド(上書き)したいが、その一部の機能は保持したいときに便利です。

Pythonでのselfとsuperの使い方

以下に、Pythonでのselfsuperの基本的な使い方を示します。

class Person():
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def say_name(self):
        print("私の名前は" + self.name + "です。 年齢は" + str(self.age) + "歳です。")

class JapanesePerson(Person):
    def __init__(self, name, age):
        super().__init__(name, age)

    def say_hello(self):
        print("こんにちは")

yamada = JapanesePerson("山田", 20)
yamada.say_name()
yamada.say_hello()

このコードでは、Personクラスを親クラスとしてJapanesePersonクラスを定義しています。JapanesePersonクラスの__init__メソッドでは、superを使用して親クラスの__init__メソッドを呼び出しています。

以上がPythonのselfsuperの基本的な理解と使い方になります。これらの概念を理解することで、Pythonのクラスと継承の理解が深まります。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です