我正在尝试创建一个需要一些复杂初始化的单例类。我把我的问题归结为这个测试用例:
class Dumb
attr_accessor :mything
@my_thing = 1 # this works
self.init_some_stuff # this gives undefined method
class << self
def init_some_stuff
@my_thing = 2
end
def spill_it
puts "My Thing: #{@my_thing}"
end
end
end
我可以初始化简单的变量,但想调用类方法来做,我得到“未定义的方法”。由于我打算将其用作单例,因此不会调用构造函数。我错过了什么?