初学ruby碰到一个问题,请大侠指教

初学ruby碰到一个问题,请大侠指教

#代码如下:
#这是书上的一个小例子,但是不知道为什么我就是运行不通,请大家看看。谢谢大侠了。

class Test1

def fib_up_to(max)
 i1, i2 = 1, 1
 while i1 <= max
  yield i1
  i1, i2 = i2, i1+i2
 end
end

fib_up_to(100) {|f| print f, " "}

end

#运行之后提示:
E:\rubywork\php?name=Ruby" onclick="tagshow(event)" class="t_tag">RubyTest\lib\test1.rb:21: undefined method `fib_up_to' for Test1:Class (NoMethodError)
   from :1


[Copy to clipboard] [ - ]
class Test1

def self.fib_up_to(max)
 i1, i2 = 1, 1
 while i1 <= max
  yield i1
  i1, i2 = i2, i1+i2
 end
end

fib_up_to(100) {|f| print f, " "}

end
在类定义内调用方法也没有什么用处吧.....