我正在理解内部的工作原理,为此,我创建了一个类Object2
和模块Kernel2
这是我创造的,
module Kernel2
module Display
def my_print(var)
sprintf "%s", var
end
end
end
class Object2
include ::Kernel2::Display
private_class_method :my_print
def self.my_print(ob)
sprintf("%s",ob)
end
obj=Object2.new
obj.my_print("hello") #=> Here , I want to call module my_print
end
我希望my_print
的工作方式与puts
类似,即,当作为类方法调用时,它将调用Object2
my_print
;当作为实例方法调用时,它将调用{{1} } kernel2
。
我想从my_print
类中调用kernel2
模块my_print
,以便它不会调用object2
object2
。
我该如何解决这个问题?