Ruby - 继承方法订单

时间:2015-09-29 16:59:16

标签: ruby inheritance methods super

有办法做到这一点吗?

class Parent
  def stuff
    #error checking that needs to go first
  end
end

class Young < Parent
  def stuff
    super
    p 'doing new stuff here'
  end
end

这段代码看到通过super调用父方法,然后它永远不会返回到&#34;做新东西&#34;部分。

1 个答案:

答案 0 :(得分:1)

继承有时会变得毛茸茸,容易出错。除非你有很多孩子正在使用&#34;父母&#34;我建议您只需捕获模块中所需的所有操作,并使用mixin进行包含。它更容易和直接。

module Stuff
  def check_errors
    #error checking that needs to go first
  end
end

class Young
  include Stuff

  check_errors
  p 'doing new stuff here'
end