はじめに
インスタンスがなんなのか説明できないので備忘録も兼ねてまとめます。
インスタンスとは?
クラスを元に生成された実体のこと。
簡単に言えば、クラスは設計図であり、その設計図に基づいて作られる実際の物体がインスタンスです。
# クラスの定義
class Car
def initialize(make, model)
@make = make
@model = model
end
def display_info
puts "Make: #{@make}, Model: #{@model}"
end
end
# インスタンスの生成
car_instance = Car.new("Toyota", "Camry")
# インスタンスの利用
car_instance.display_info # 出力: Make: Toyota, Model: Camry
この例では、Car
クラスが定義され、そのクラスからCar.new("Toyota", "Camry")
としてインスタンスが生成されています。initialize
メソッドはインスタンスが生成される際に呼び出され、引数を使ってインスタンス変数 @make
と @model
に代入されます。
また、display_infoメソッドはインスタンスの情報を表示するためのメソッドです。
Rubyでは、インスタンス変数は@
で始まり、そのスコープはクラス内でのみ有効です。インスタンスメソッドはクラス内で定義され、インスタンス変数にアクセスすることができます。
この例を実行すると、Make: Toyota, Model: Camry
が表示されます。