Rubyのクラス変数とインスタンス変数
class Greeting
def setName(name = "Ruby")
@name = name #引数をインスタンス変数@nameに設定
end
def hello
print "Hello ", @name,"\n" #変数@nameは他のメソッドからでも参照可能
end
end
g1 = Greeting.new #オブジェクトg1を生成
g1.setName("Taro") #g1に名前を設定
g2 = Greeting.new #オブジェクトg2を生成
g2.setName("Jiro") #g2に名前を設定
g1.hello
g2.hello
g3=Greeting.new()
g3.setName()
g3.hello()
name="Ruby"と初めから入っているのは入力しなかったときはデフォルトの値を使うという意味。
@name=nameがself.name=nameに対応する。
self.hogeは同じクラス内の違うメソッド間でも共有される
@の数覚える