string学习

来自:http://www.cnblogs.com/kkgreen/archive/2011/08/24/2151450.html

0,new是创了两个对象,一个在堆,一个在常量池

1,变量+字符串=自动变成堆的

2,final变量+字符串=还是常量池

3,final  get()+字符串=堆空间变量

4,String a = new String("1") + new String("1"),产生了4个对象,一个“1”常量池,两个“1”堆空间,一个“11”堆空间,没有11常量池现在


包含了intern:https://blog.csdn.net/soonfly/article/details/70147205

文中有点理解不一样,就是java7用了intern不会产生新的常量,还是以前的

intern后相当把引用的地方放进string池,不改变原来对象

但已经有了这个string常量,再intern,两个是不一样的(是错误理解

猜你喜欢

转载自www.cnblogs.com/vhyc/p/9220948.html