更改引用变量的值不会修改它引用的对象内的任何内容 . 但它可以使该变量引用不同的对象 . 变量独立于对象而存在 . 这可以如下图所示显示 .
创建三个对象后,就会出现这种情况 .
/ \ / \ / \
| | | | | |
t1-> | 17 A | t2-> | 13 B | t3-> | 14 C |
| | | | | |
\ / \ / \ /
然后你改变t3指的是什么,所以你有
/ \ / \ / \
| | t2-> | | | |
t1-> | 17 A | | 13 B | | 14 C |
| | t3-> | | | |
\ / \ / \ /
然后你改变t2指的是什么,所以你有
/ \ / \ / \
t1-> | | | | | |
| 17 A | t3-> | 13 B | | 14 C |
t2-> | | | | | |
\ / \ / \ /
并且你改变t1指的是什么,所以你有
/ \ / \ / \
| | t1-> | | | |
t2-> | 17 A | | 13 B | | 14 C |
| | t3-> | | | |
\ / \ / \ /
然后你开始打印东西 . 如上面的最终图所示, t1.age 和 t3.age 都是 13 , t2.age 是 17 .