当对象的实例扩展模块并在模块上调用extended
时,base
是否已扩展模块?数字扩展模块,当处于模块的扩展方法中时
module M
def self.extended base
# when this is called has base extended
end
def self.some_method
# that does something special ;)
end
end
obj = Object.new
obj.extend M
更新:好了,对象和字符串的作品,但为什么不工作的数字?我得到TypeError: can't define singleton
那么如果只有一个数字'1',为什么我不能定义一个单例方法来给它赋予不同于数字'2'的专门行为呢? :) Fixnums * do *拥有自己的ivars,我看不出他们为什么不能拥有自己的单身类:) – horseyguy 2012-02-07 01:43:39