5
当我想从类的外部访问不断CONST
在Test
类访问常量
class Test
CONST = 7
end
,我必须这样做:
puts Test::CONST
为什么我得到我这样做时出错?
puts obj::CONST
如果obj
是Test
类的对象,为什么我得到一个错误,如果我试图通过对象来访问常数?
当我想从类的外部访问不断CONST
在Test
类访问常量
class Test
CONST = 7
end
,我必须这样做:
puts Test::CONST
为什么我得到我这样做时出错?
puts obj::CONST
如果obj
是Test
类的对象,为什么我得到一个错误,如果我试图通过对象来访问常数?
因为实例对象和类对象不是一回事。名称空间存在于类对象上,并且不存在于实例上。
但是,您可以询问实例的类,然后深入研究。
puts obj.class::CONST
谢谢,简单直接点**因为实例对象和类对象不是同一件事** – tawheed 2013-02-14 01:31:47