class BookInStock
attr_reader :isbn, :price
def initialize(isbn, price)
@isbn = isbn
@price = Float(price)
end
「這是我們第一次在本章中使用符號。正如我們所討論的,符號只是引用名稱的一種便捷方式。在這段代碼中,你可以想到:isbn的意思是名字isbn,並且認爲plain isbn意思是變量的值。在這個例子中,我們命名訪問器方法isbn和price。相應的實例變量是@isbn和@price。 「局部變量,實例變量和符號之間的混淆
問題:我知道局部變量被分配了實例變量,所以當initialize方法返回時它們不會消失。但爲什麼我必須使用attr_accessor符號?如果我只想要普通變量呢?我注意到,刪除冒號:isbn和:attr_accessor中的price會導致它停止工作。