顶级作用域使用 main 来标记,main 是 Object 的一个实例化对象.
在里面定义的方法默认为成为 Object 的私有方法。
def do_sth
return "done!"
end
class A
def a
do_sth
end
def self.a
do_sth
end
end
puts self.private_methods.include?("do_sth") # => true
puts Object.private_methods.include?("do_sth") # => true
A.new.a #=> ok
A.a #=> ok