3 回答

TA貢獻(xiàn)1890條經(jīng)驗(yàn) 獲得超9個(gè)贊
以@開始的變量是【實(shí)例變量】,實(shí)例變量屬于特定的對(duì)象。
class Person
def initialize(name, gender, age)
@name = name
@gender = gender
@age = age
end
end
上面的例子中,@name, @gender,@age都是實(shí)例變量??梢栽陬惢蜃宇惖姆椒ㄖ幸脤?shí)例變量。若引用尚未被初始化的實(shí)例變量的話,其值為nil。
【類變量】被一個(gè)類的所有實(shí)例對(duì)象共享,也可以被類方法訪問到。類變量名以‘@@’,開始,例如‘@@number’。和全局變量,實(shí)例變量不同,類變量在使用前必須初始化:
class Person
@@number = 0 #使用前必須有初值
def initialize(name, gender, age)
@name = name
@gender = gender
@age = age
@@number += 1
end
end
類變量是私有的,在類外無法直接訪問,你只能通過實(shí)例方法和類方法去訪問它。

TA貢獻(xiàn)2003條經(jīng)驗(yàn) 獲得超2個(gè)贊
以@開始的變量是【實(shí)例變量】,實(shí)例變量屬于特定的對(duì)象。 class Person def initialize(name, gender, age) @name = name @gender = gender @age = age end end 上面的例子中,@name, @gender,@age都是實(shí)例變量。
- 3 回答
- 0 關(guān)注
- 578 瀏覽
添加回答
舉報(bào)