版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
前言:简单说明一下new对象和=对象的区别
先说一下 :
String a = 'test';// 1
String b = new String("test"); 2
的区别吧
1这种方式JVM会先去共享的字符串池中查找,有没有"test"这个词,如果有直接返回它的引用;如果没有,就会创建这个对象,再返回,。因此,“a”+“b"相当于存在3个对象,分别是"a”、“b”、“ab”。
而new String(“test”),则省去了查找的过程,直接就创建一个b的对象,并且返回引用
创建的对象也是如此,= 比较的是内存地址的位置,如果对象内存地址相等则 a=b 则成立,=是对内存地址的应用