<分区>
我是 Ruby 的初学者,正在尝试了解其对象模型。
在 IRB 中。我创建了一个名为 MyClass
的类并开始检查对象模型,如下所示:
2.1.0p0 :013 > MyClass.class
=> Class
2.1.0p0 :014 > MyClass.superclass
=> Object
2.1.0p0 :015 > Class.class
=> Class
2.1.0p0 :016 > Class.superclass
=> Module
2.1.0p0 :017 > Object.class
=> Class
2.1.0p0 :018 > Object.superclass
=> BasicObject
2.1.0p0 :019 > BasicObject.class
=> Class
2.1.0p0 :020 > BasicObject.superclass
=> nil
问题一
当 MyClass.class == Class.class
返回 true< 时,为什么
?Myclass.superclass
和 Class.superclass
不同
2.1.0p0 :021 > Class.class == MyClass.class
=> true
换句话说:为什么它们的父类(super class)不同?
问题2
这张图准确吗? Diagram's Link
提前谢谢你。