所以,我想知道Ruby如何成为一个完全面向对象的语言。我遇到了一个问题,对我来说不是很清楚。
如果我按照以下方式定义一个函数:
def foo(text)
print text
end
如果我在类外定义函数,那么这个函数怎么成为一个对象呢?我知道我可以调用它,但是它的本质是什么呢?
foo.class
我得到了NilClass。这是否意味着foo是NilClass的一个实例?如果是,当我调用时这究竟意味着什么
foo "hello world"
如果foo是一个对象,那么我在上述语句中调用的是哪种方法?另外,如果它是一个对象,这是否意味着我可以修改它并添加另一种方法(比如bar),以便我可以可能做出以下语句:
foo.bar(some variables)
抱歉,我对这一点有些困惑。非常感谢任何澄清!谢谢!