gpt4 book ai didi

ruby - 理解 Ruby 类实例变量

转载 作者:数据小太阳 更新时间:2023-10-29 06:52:30 26 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Why do Ruby setters need “self.” qualification within the class?

有人可以解释以下内容之间的区别,以及为什么它不像人们预期的那样:

# version #1
class User
def initialize(name, age)
@name = name
@age = age
end
end

#version #2
class User
attr_accessor :name, :age
def initialize(name, age)
@name = name
@age = age
end
end

#version #3
class User
attr_accessor :name, :age
def initialize(name, age)
self.name = name
self.age = age
end
end

据我了解,在方法中,当您分配时,您必须使用 self 关键字。为什么不能在 initialize 方法中使用它?或者你可以吗?我尝试使用它,但它似乎没有按预期工作,我只是对使用哪种技术以及何时使用以及更重要的是为什么感到困惑。

我真的希望有人能一劳永逸地为我解决这个问题:)

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com