Ruby覆盖类方法

Jea*_*Luc 1 ruby class

例如,是否可以覆盖'puts'方法并将其替换为调用'puts'两次的函数?

例如:

class IO
  def puts str
    puts str
    puts str
  end
end
Run Code Online (Sandbox Code Playgroud)

我知道这个例子很愚蠢,但我还需要别的东西.基本上,我想覆盖一个函数,但我希望覆盖函数包含对原始的重写函数的调用.

小智 5

class IO

  alias puts_orig puts
  def puts str
    puts_orig str
    puts_orig str
  end
end
Run Code Online (Sandbox Code Playgroud)