class BankAccount
def self.create_for(first_name, last_name)
@accounts ||= []
@accounts << BankAccount.new(first_name, last_name)
end
def initialize(first_name, last_name)
@balance = 0
@first_name = first_name
@last_name = last_name
end
def self.find_for(first_name, last_name)
@accounts.find{|account| account.full_name == "#{first_name} #{last_name}"}
end
def full_name
"#{@first_name} #{@last_name}"
end
end
方法self.find_for
如何工作?我对account
变量如何访问full_name
方法感到困惑?变量有权访问实例方法
bankacc = BankAccount.create_for "Kevin", "Shane"
BankAccount.find_for("Kevin", "Shane")
puts bankacc.inspect
为什么会让你感到困惑? 'full_name'是一个简单的实例方法,'account'是'BankAccount'的一个实例,所以你可以调用它的实例mehtod'full_name'。 – Mischa