示例代碼:如何覆蓋擴展方法?
module B
def f2
puts "B::f2"
end
end
class C
def initialize
extend B
end
def f2
puts "C::f2"
end
end
c = C.new
c.f2
上面的示例代碼是我的問題的抽象。 Class C
延伸module B
在飛行(B
實際上延伸到C
的實例)。方法f2
from B
不符合我的需要,所以我想覆蓋f2
。如何實現?
好,你_are_覆蓋'C#有一個從'B' f2'。爲什麼你做這個動態擴展而不是通常的任何原因包括? –
因爲在我的真實代碼中,'B'是一個可配置的插件。 – TieDad