我正在从书籍《Ruby元编程》中学习Ruby对象模型,理解了类也是对象的概念。
class A
end
A.ancestors # => [A, Object, Kernel, BasicObject]
A.class.ancestors # => [Class, Module, Object, Kernel, BasicObject]
我困惑的是,当我在irb中最初尝试A.ancestors时,我期望得到在A.class.ancestors中得到的结果 - 我的思路是:由于A是一个类,而类是类Class的实例,它的祖先是Class。 但是Class似乎不是A的祖先。
A
是Class
的一个实例,在 Ruby 中,Class
也是一个实例,我的英语不好 =( - Steely Wing