Ruby foo = (bar) 的意思?

colinxt · 2013年05月02日 · 最后由 colinxt 回复于 2013年05月02日 · 2788 次阅读

经常看到别人的代码里有类似这个的:

def foo=(bar)
  #...
end

查了一下资料,貌似说是什么赋值方法??没看懂想请教各位。

谢谢先~

class A
  def foo=(bar)
     puts "foo = #{bar}"
  end 
end

A.new.foo = 2
# => foo = 2
# => nil

相当于 java 里面的 setter, setFoo(bar)

重载操作符 其实你就把它当做是重写方法就行,只是这个方法是=

明白了!谢谢 ls 几位!

需要 登录 后方可回复, 如果你还没有账号请 注册新账号