如何将对方法的调用委托给Ruby中的另一个方法?

时间:2012-10-08 17:49:57

标签: ruby

我想为已经存在的方法创建另一个名称,例如我想用slice致电only。我不想改变原始方法的行为,所以它不是重新定义,而是委托。我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:1)

class Whatever
  def slice
    # do something
  end
  alias :only :slice
end

答案 1 :(得分:1)

在Ruby中有很多方法可以做到这一点。请查看这篇文章,这可能会帮助您找到最合适的方法。

http://gdakram.com/past/2010/12/2/multiple_ways_in_implementing_delegation_pattern_in_ruby/