スーパークラス(親クラス)のメンバ変数を継承してサブクラス(子クラス)で使う方法

スーパークラス(親クラス)のメンバ変数を継承して、サブクラス(子クラス)で使用するには、サブクラスのコンストラクタ(__init__ メソッド)内で super() 関数を使用して親クラスのコンストラクタを呼び出し、親クラスのメンバ変数を継承します。以下は、具体的な手順です:

  1. スーパークラスを定義します。スーパークラスはメンバ変数を含むことができます。
python
class Superclass: def __init__(self, super_variable): self.super_variable = super_variable
  1. スーパークラスを継承するサブクラスを定義します。サブクラスのコンストラクタで super() 関数を使用してスーパークラスのコンストラクタを呼び出します。
python
class Subclass(Superclass): def __init__(self, super_variable, sub_variable): super().__init__(super_variable) # 親クラスのコンストラクタを呼び出し self.sub_variable = sub_variable
  1. サブクラスのインスタンスを作成し、スーパークラスのメンバ変数とサブクラスのメンバ変数をアクセスします。
python
obj = Subclass("スーパー変数", "サブ変数") print(obj.super_variable) # スーパークラスのメンバ変数をアクセス print(obj.sub_variable) # サブクラスのメンバ変数をアクセス

このプロセスにより、サブクラスはスーパークラスのメンバ変数を継承し、同時に独自のメンバ変数を追加できます。super() 関数を使用して親クラスのコンストラクタを呼び出すことがポイントで、これによりスーパークラスのメンバ変数を正しく初期化します。サブクラスのコンストラクタ内で親クラスのコンストラクタを呼び出すことで、親クラスの初期化処理を実行し、その後にサブクラス独自の初期化処理を行います。