Ruby 在irb中定义和调用方法

Ruby 在irb中定义和调用方法,ruby,irb,Ruby,Irb,我正在努力理解OOP。 我试图用IRB来玩弄Ruby,加深我的理解 内部评级 foo = Object.new 创建一个新对象 然而,如果我尝试给irb一个定义,并在那个对象上调用它,它就不起作用了。(def是否必须出现在.rb文件中并加载到Ruby中?) 您需要在要应用该方法的类中定义该方法 class NewObject def foo puts "hello" end end 这些方法称为: x = NewObject.new x.foo 您可以通过定义方法来创建非特

我正在努力理解OOP。 我试图用IRB来玩弄Ruby,加深我的理解

内部评级

foo = Object.new
创建一个新对象 然而,如果我尝试给irb一个定义,并在那个对象上调用它,它就不起作用了。(def是否必须出现在.rb文件中并加载到Ruby中?)


您需要在要应用该方法的类中定义该方法

class NewObject
  def foo
    puts "hello"
  end
end
这些方法称为:

x = NewObject.new
x.foo
您可以通过定义方法来创建非特定于类的方法:

 def bar
   puts "bar!"
 end
只要叫他们:

bar
使用
pry

gem install pry
它比irb好

ruby中的一切都是对象

对象上的点表示法意味着这是该对象的一种方法

这就是为什么需要将其包装在类/模块中

我建议阅读此处了解更多信息:

好的,谢谢!所以我没有回来这一事实让一切都不同了!我真傻。非常感谢。请参阅我的编辑。它更多地解释了类中的方法,而不仅仅是一般方法。如果这解决了您的问题,请选择“接受”。
gem install pry