变量是指在程序的运行过程中随时可以发生变化的量。它只是程序中用来临时存放数据。
对象是我们要进行研究的任何事物,不仅能表示具体的事物,还能表示抽象的规则、计划或事件。严格来说,对象也是变量的一种,是特定类型的变量。
变量可以用来存储对象的引用。
通过一下代码说明
y = "sdsd"
x = y
puts x
puts y
puts x.object_id
puts y.object_id
x = "sffeeef"
puts x
puts y
puts x.object_id
puts y.object_id
puts x == y
输出结果为
sdsd
sdsd
23670680
23670680
sffeeef
sdsd
23670650
23670680
false
x,y是两个变量,它们存储的是对象的引用,相当与对象存储的地址,也就是我们要找到对象,要通过引用来查找。将y赋值给x之后,变量x,y存储同一的引用,这是x,y的对象id相等,而当x被赋为其他值之后,x不再指向原来的对象sdsd,而是指向了另一个对象sffeeef,但y所指的的对象不变,他们的对象id也不再相等。