我试图理解下面写的代码。初始化方法中参数后面的冒号是什么意思?比如 consumable: account: 等。我知道变量名前有一个冒号意味着它是一个符号,并且不能像变量那样改变它的值。但是后面加冒号是什么意思呢?谢谢
class Purchaser
attr_accessor :consumable, :account, :amount, :reason
def initialize(consumable:, account:, amount:, reason:)
@consumable = consumable
@account = account
@amount = amount
@reason = reason
end
def make_purchase
if purchase.update(account: account, amount: amount, reason: reason) && decrease_stock
return true
else
return false
end
Run Code Online (Sandbox Code Playgroud)