1.字符串的不可变性
当你给一个字符串重新赋值之后,老的值并没有销毁,而是重新开辟了一块空间(堆)存储新的值。
**当程序结束后,GC扫描整个内存,如果发现有的空间没有被指向,则立即把它销毁。
示意图:值类型和引用类型在内存中的存储
示意图:s1和s2 在栈中存储着相同的地址,这个地址指向堆中的"张三";s1重新赋值“123”,会在堆中开辟一块新的空间存储“123”,然后栈中的s1存储的地址改变!
示意图:验证s1="123",s2="123"在栈中存放的内存都是堆中同一个地址
2.