Rubyのattr_readerについて
読んだもの
学んだこと
attr_readerメソッドはアクセサメソッドを定義する。 アクセサメソッドとは、クラスやモジュールにインスタンス変数を読み出すためのメソッドである。 引数には、インスタンス変数名をシンボルか文字列で指定する。
下記はBookクラスにtitleメソッドとpriceメソッドを定義する例。beforeはattr_readerを使わない場合の書き方。
before
class Book def title @title end def price @price end end
上の例をattr_readerを書き直すと、下記のようになる。
after
class Book attr_reader :title, :price def initialize(title, price) @title = title; @price = price end end