没有类的Ruby方法?

时间:2011-06-06 21:59:02

标签: ruby

嘿大家好!我想知道Ruby中没有使用语法ClassName.method_name调用的方法是如何工作的。我的头顶有些是putsprintgetschomp。可以在不使用点运算符的情况下调用这些方法。为什么是这样?他们来自哪里?我怎样才能看到这些方法的完整列表?

2 个答案:

答案 0 :(得分:8)

Kernel中的所有方法都可用于类Object的所有对象或从Object派生的任何类。您可以使用Kernel.instance_methods列出它们。

答案 1 :(得分:1)

它们来自每个类自动包含的Kernel模块。那些

irb(main):001:0> class Foo
irb(main):002:1> end
=> nil
irb(main):003:0> Foo.included_modules
=> [Kernel]