prograteでinitializeメソッドの部分でつまずきました。
どなたかご教授願います。以下、prograteからの引用です。
「下記の式のように、initializeメソッドでインスタンス変数に引数の値を代入することで、インスタンス毎にインスタンス変数の値を変えることができます。
その際に、キーワード引数を使うことで見やすく書くことができます。」
ruby
1class Menu 2 3attr_accessor :name 4atto_accessor :price 5 6 7def initialize(name:, price:) 8 self.name = name 9 self.price = price 10 end 11 12 def info 13 return "#{self.name} #{self.price}円" 14 end 15 16end 17 18menu1 = Menu.new(name: "すし", price: 1000) 19 20puts menu1.info 21
「initializeメソッドでインスタンス変数に引数の値を代入することで、インスタンス毎にインスタンス変数の値を変えることができます」とありますが、これが具体的にどういった意味なのかよくわかりません。
ここでいうインスタンス変数の値とは、この式でいうmenu1=Menu.new(name: "すし", price: 1000)の部分に当たるのでしょうか?
また、「インスタンス毎にインスタンス変数の値を変えることができます」とありますが、「インスタンス毎」とは、例えばmenu2という新しいインスタンスを作った際に、インスタンス変数の値を変えても問題がないということなのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/03 05:01
2019/09/03 05:05
2019/09/04 02:22