では、コード例を見てみましょう:
class BankAccount
def initialize(balance)
@balance = balance
end
# your code here
end
ここでは、次の方法でオブジェクト の作成時に自動的に呼び出されるメソッド (コンストラクターとも呼ばれます) を定義するBankAccount
クラスを定義しています。BankAccount#initialize
BankAccount
BankAccount::new
BankAccount.new( 123 )
上記の例@balance
では、 に設定され123
ます。@balance
はインスタンス変数です (名前の前にあることに注意してください)。これは、定義した任意のメソッド内でオブジェクトごとに@
アクセスできることを意味します。
その変数を返すには、演習で求められているように、次のようにメソッドreturn
内でキーワードを使用できます。BankAccount#balance
def balance
return @balance
end
Ruby 構文では、(メソッドから最後に評価された式を常に返すように意図されているため) 省略return
して、より簡潔な構文にすることもできます。
def balance
@balance
end
この種のgetter メソッド(= インスタンス変数を返すメソッド) には、attr_reader
次のように使用できる簡単なユーティリティがあります。
class BankAccount
attr_reader :balance
def initialize(balance)
@balance = balance
end
end
しかし、心配しないでください。おそらく、すぐに上記のことを学ぶでしょう。楽しい学習。