我正在通过阅读实用程序员指南编程Ruby来学习Ruby . 我真的很喜欢语法的简洁.
我无法理解=setter方法名称的作用:
def price=(new_price)
@price = new_price
end
Run Code Online (Sandbox Code Playgroud)
该函数定义与此有何不同:
def price(new_price)
Run Code Online (Sandbox Code Playgroud)
有什么区别=?这本书说它可以直接分配.但是,使用普通的setter方法已经没有了=......?
这是课程的其余部分:
class BookInStock
attr_reader :isbn
attr_accessor :price
def initialize(isbn, price)
@isbn = isbn
@price = Float(price)
end
end
book.price = book.price * 0.75
Run Code Online (Sandbox Code Playgroud) ruby ×1