メンバ変数

メンバ変数(Member Variables)は、オブジェクト指向プログラミング(OOP)において、クラス内で定義された変数であり、そのクラスのインスタンスに属する属性を表します。メンバ変数は通常、オブジェクトの状態やデータを保持するために使用されます。メンバ変数はクラス内で宣言され、各インスタンスに対して固有の値を持つことができます。

メンバ変数に関する主要なポイントは次の通りです:

  1. クラス内で定義: メンバ変数はクラス内で定義され、そのクラスの属性として扱われます。メンバ変数は通常、クラスのフィールドやプロパティとして宣言されます。

  2. 各インスタンスごとに異なる値: メンバ変数は各クラスのインスタンスごとに異なる値を持つことができます。これにより、各インスタンスは独自のデータを保持できます。

  3. アクセス制御: メンバ変数は通常、アクセス修飾子(public、private、protectedなど)を使用してアクセス制御が行われます。これにより、メンバ変数へのアクセスを制限できます。

  4. 初期化: メンバ変数は宣言時に初期化されることがありますが、初期化されない場合はデフォルト値が設定されます(一般的には0、False、nullなど)。

以下は、Pythonでのメンバ変数の例です:

python
class Car: def __init__(self, make, model, year): # メンバ変数の定義 self.make = make self.model = model self.year = year self.mileage = 0 # デフォルトで0マイル def drive(self, miles): self.mileage += miles # インスタンス化 car1 = Car("Toyota", "Camry", 2020) car2 = Car("Honda", "Civic", 2019) # メンバ変数へのアクセス print(car1.make) # Toyota print(car2.year) # 2019 # メンバ変数の変更 car1.model = "Corolla" print(car1.model) # Corolla # メンバ変数の変更(メソッドを通じて) car2.drive(100) print(car2.mileage) # 100

この例では、Car クラス内でメンバ変数 makemodelyear、および mileage が定義されています。各インスタンスは異なる値を持つこれらのメンバ変数を保持し、メンバ変数にアクセスして値を変更できます。また、メソッドを通じてメンバ変数の値を変更することもできます。メンバ変数は、オブジェクトの状態を表現するのに役立ちます。