A symbol is an identifier whose first character is a colon ( : ), so :this
is a symbol and so is :that .
symbol是以:开头的。
A symbol is not: it is not a string, it is not a constant and it is not a
variable. A symbol is, quite simply, an identifier with no intrinsic meaning
other than its own name.
symbol不是字符串,不是常量,不是变量,它只是一个符号,来表示它自己的名字
同一个symbol在不同的上下文中是一样的.
顺便提一句,值相同的Fixnum的哦bject_id也是一样的
#from Ruby doc
module One
class Fred
end
$f1 = :Fred
end
module Two
Fred = 1
$f2 = :Fred
end
def Fred()
end
$f3 = :Fred
$f1.object_id #=> 2514190
$f2.object_id #=> 2514190
$f3.object_id #=> 2514190