在irb中定义和调用方法

时间:2015-03-31 05:53:06

标签: ruby irb

我正在努力理解理解OOP。 我正在尝试使用IRB来玩Ruby并加深我的理解。

在IRB

foo = Object.new

创建一个新对象 但是,如果我尝试给定义一个定义并在该对象上调用它它就不起作用。 (def必须在.rb文件中发生并加载到Ruby中吗?)

def bar "hello" end

2 个答案:

答案 0 :(得分:4)

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

class NewObject
  def foo
    puts "hello"
  end
end

这些方法被称为:

x = NewObject.new
x.foo

您可以通过定义方法来创建不特定于类的方法:

 def bar
   puts "bar!"
 end

并将其称为:

bar

答案 1 :(得分:0)

使用pry

gem install pry

irb

更好

ruby​​中的所有内容都是一个对象

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

这就是你需要将它包装在类/模块

中的原因

我建议在这里阅读更多信息: https://rubymonk.com/learning/books/4-ruby-primer-ascent/chapters/45-more-classes/lessons/113-class-variables