Ruby中调用方法
Ruby是怎么判断方法名的:
首先这个明显的存在对象调用,譬如obj.method self.method ,
后面加了参数了 如 method(attr1,attr2...) ,
这就能直接的判断这个method是方法名,而不是变量名
所以在调用的时候需要的注意:
class A def attr= name @name = name end def attr self.attr= "sdas" @name endendobj = A.newp obj.attr=> sdas
但是如果这样使用:
class A def attr= name @name = name end def attr attr= "sdas" @name endendobj = A.newp obj.attr则返回 nil
原因是
在这个标记的地方 并没有将attr= "sdas" 当做方法在调用,而是在当做 常量使用,正确的应该是
是使用
self.attr= "sdas"
新闻热点
疑难解答