【发布时间】:2013-01-23 09:12:57
【问题描述】:
我正在尝试为 mixin 扩展一个类中的模块方法。
这是我的代码:
module Mod_1
def bar
puts "xxx"
end
end
class Class_A
include Mod_1
def bar
super
puts "yyy"
end
end
test = Class_A.new
test.bar
我能想到的最好的方法是:
module Mod_1
def Mod_1.foo
puts "aaa"
end
end
class Class_A
include Mod_1
def foo
Mod_1.foo
puts "bbb"
end
end
test = Class_A.new
test.foo
有没有更好的方法可以做到这一点?
【问题讨论】:
-
你的代码有问题吗?如果是,那是什么?如果不是,那是什么问题?
-
问题是有没有更好的方法可以做我想做的事。
-
你到底想做什么?为什么这种方式对你来说不够好?
-
可以扩展模块,但不能扩展模块方法。