闲来翻翻 builder 这个 gem 的源码,发现有下面这一段:
module Builder
if Object::const_defined?(:BasicObject)
BlankSlate = ::BasicObject
else
require 'blankslate'
BlankSlate = ::BlankSlate
end
end
里面有这个一个表达式:
Object::const_defined?(:BasicObject)
就在猜想,Ruby 里把消息发送给对象,除了用 . 等方式外,还有种方式是通过 :: 发送吗?
就在 irb 里试了,发现的确如此,不管是实例对象还是类对象,都可以,想跟大家确认下是这样的吗?