各位来普及一下吧。 我想学习一下。 语言表达太抽象了,实例说明好吧。
这块在 ruby 中有点复杂的,如果可能还是读读 Programming Ruby 和 Metaprogramming Ruby 这两本书中的相关章节,再多读读源码。要把之个弄清楚,还要了解 minix, meta class (这个东西有多个叫法)和继承。
Ruby 中 oo 的关键点在于,所有东西都是对象,类也是对象。硬要举个例子的话:
Human = Class.new
Human.instance_of? Class => true
即 Human 是 Class 类的一个实例。