ClassName.method_name
调用的方法是如何工作的。我的头顶有些是puts
,print
,gets
,chomp
。可以在不使用点运算符的情况下调用这些方法。为什么是这样?他们来自哪里?我怎样才能看到这些方法的完整列表?
答案 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]