我正在学习编程,决定试试Ruby.我相信这是一个愚蠢的问题,但老师正在谈论二传和传接球的方法,我很困惑.下面是一个例子:
class Human
def noise=(noise)
@noise = noise
end
def noise
@noise
end
end
从这里,这个类被实例化,我可以这样说:
man = Human.new
man.noise=("Howdie!")
puts man.noise
这将导致Howdie!
人死亡
现在让我困惑的是,讲师说如果没有getter方法(两种方法中的第二种),就无法与实例变量@noise交互.
但当我删除getter方法时,我仍然能够访问@noise,请参见示例:
class Human
def noise=(noise)
@noise = noise
end
end
man = Human.new
puts man.noise=("Howdie!")
这与使用getter方法时的效果相同.
所以现在我很困惑.为什么需要Getters ?如果没有实例变量,讲师不能访问它是什么意思?他可能使用的是旧版本的Ruby吗?
提前感谢你的帮助.