我试图调用我的一个类属性编写器,但由于某种原因它永远不会被调用.这里有一些代码可以让我更清楚:
class Test
attr_reader :test
def test=(val)
puts 'Called'
@test = val
end
def set_it(val)
test = val
end
end
obj = Test.new
obj.set_it 5
puts obj.test
=> nil
Run Code Online (Sandbox Code Playgroud)
最后的puts语句输出'nil'.向test =添加一个调试语句表明它永远不会被调用.我究竟做错了什么?
更新
我部分地重写了这个问题,因为当我写这个问题时我并没有真正理解这个问题.所以这个问题现在更加普遍.
| 归档时间: |
|
| 查看次数: |
1272 次 |
| 最近记录: |