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