今日はinitializeメソッドを学んでみた!
今日の学び
インスタンス生成時に値を代入する方法
- initializeメソッド
- インスタンスを生成した直後に処理を実行することができる
- 「クラス名.new」でインスタンスを生成した直後に自動で呼び出される
- 使用例
class Menu
attr_accessor :name
attr_accessor :price
def initialize
self.name = "寿司"
self.price = 1000
puts "#{self.name}は#{self.price}円です"
end
end
-
menu1 = Menu.new
→initializeが呼び出されメソッド内の処理が実行される
initializeメソッドの引数
- initializeメソッドは引数を渡すこともできる
- 「クラス.new」に対して引数を渡すことでinitializeメソッドにその値を渡すことができる
- 1つの引数を渡す場合
class Menu
attr_accessor :name
def initialize(name)
puts name
end
end
-
menu1 = Menu.new("寿司")
→「寿司」と表示される
- 複数の引数を渡す場合
class Menu
attr_accessor :name
attr_accessor :price
def initialize(name:,price:)
self.name = name
self.price = price
end
def info
return "#{self.name}は#{self.price}円です"
end
end
menu1 = Menu.new(name:"寿司",price:1000)
puts menu1.info
- 1つの引数を渡す場合