【发布时间】:2014-08-25 00:37:40
【问题描述】:
我已经阅读了很多关于 ruby 类与对象的信息,我得出了这个结论
有一个概念叫做“类”,我们有以下类:
BasicObject
它是
的超类Object
这是
的超类Module
它是
的超类Class
所以:
“类”
Class是“类”Object的子类因为上面所有的“类、模块、对象、基本对象”都是“类”概念的实例。
Instance_of? Class会 全部返回 true- 另一方面,
(Object.new).instance_of? Class将返回 false,因为(Object.new)是“类”Object的一个实例
问题:
-
Class.is_a? Object是 true,因为Class是Object的子类,但Object.is_a? Class也返回 true,是因为这里的 Class 指的是更大的类概念吗?如果是,为什么?这不是很混乱吗?我怎么知道哪个班级是哪个班级?
【问题讨论】:
-
“大类概念”是什么意思?
-
就像“类”是“对象”与“类”的子类,其中一切都是一个类,包括“对象”......这有意义吗?
-
只有一个类。 this question and its answers 似乎回答了你的问题?
标签: ruby