小编Joe*_*e V的帖子

通过混合模块来覆盖类的实例方法

给定A类和模块B,混合B的实例方法,使其覆盖A的相应实例方法.

module B
  def method1
    "B\#method1"
  end

  def method2
    "B\#method2"
  end
end

class A
  def method1
    "A\#method1"
  end

  def method2
    "A\#method2"
  end

  # include B    does not override instance methods!
  #              (module gets mixed into the superclass)
end

puts A.new.method1   # want it to print out "B#method1"
puts A.new.method2   # want it to print out "B#method2"
Run Code Online (Sandbox Code Playgroud)

ruby overriding module mixins

0
推荐指数
1
解决办法
1343
查看次数

标签 统计

mixins ×1

module ×1

overriding ×1

ruby ×1