我正在嘗試覆蓋Class.new
,以便我可以看到正在創建哪些類,例如爲什麼不叫Class.new?
class Class
class << self
alias new_orig new
def new(*args)
obj = new_orig *args
print "created",obj,"\n"
obj
end
end
end
class X
end
它不打印任何東西,但如果我用Class.new創造一流的工作原理
puts Class.new
created#<Class:0x8b75888>
#<Class:0x8b75888>
那麼,爲什麼有class X
和Class.new
之間的差異?
不要你的意思是「爲什麼*不*'Class.new'叫什麼名字?」? – 2013-03-14 00:10:45
@AndrewMarshall是的,你是對的,修好了,謝謝。 – 2013-03-14 01:09:20