鉴于符号是唯一的,下面的:test
的两个实例(引用不同的方法(在不同的类中))具有相同的对象ID怎么可能?
class Dope
def test
end
end
class Green
def test
end
end
green = Green.new
dope = Dope.new
green.methods.include?(:test) # => true
dope.methods.include?(:test) # => true
green.test.object_id # => 8
dope.test.object_id # => 8
如何使用两个具有相同名称/对象ID的符号来引用不同的方法?
答案 0 :(得分:2)
您的test
个方法都返回nil
。因此,您获得的对象ID是nil
的对象ID:
nil.object_id
# => 8
答案 1 :(得分:1)