第二个类的str1和str2被final修饰",在常量池就会开辟两块空间存放“Heima”和“Java”,那么串联时因为被final修饰了(引用地址不可改变),所以不会在堆内存中开辟新的空间,而是在常量池中查找,找到“HeimaJava”后把常量池存“HeimaJava”的地址(这个地址指向s1)仍给s3,结果(s1==s3)true作者: dev 时间: 2012-7-4 16:03
feigecal 发表于 2012-7-3 20:25
因为第一个类中的str1和str2是一个引用指向字符串常量池里,它是在编译时期就这么做的,但是String s3 = st ...