我写了下面的代码。当我运行Hello.run
我想记录一条消息,但这不起作用。当我在类中运行方法时,如何记录消息?
为什么不能正常工作?
class Hello
def initialize
@logger = Logger.new STDOUT
end
def self.run
self.new
@logger.warn 'Hello'
end
end
Hello.run
这是错误信息运行Hello.run
NoMethodError: private method `warn' called for nil:NilClass
谢谢,我也会阅读你更长的答案。好像我只需要更好地理解Ruby类和可变范围。 – pkhamre 2012-07-18 12:48:35