方式一 : String a = "123";
方式二: String b = new String("123");
1 . 方式一 创建字符串时,会先在字符串常量池中查找,如果有"123"这个字符串,那么把其地址给到 a 即可.
如果没有,则会在常量池中增加"123",然后把地址给到a.
2 . 方式二 创建时会先在 堆 内存中创建一个对象,然后把该对象地址给到 b ,并且同时会在常量池中查找,如果没有,则会在常量池中
也增加一个"123"常量. 相当于创建了 两个对象.
方式一 : String a = "123";
方式二: String b = new String("123");
1 . 方式一 创建字符串时,会先在字符串常量池中查找,如果有"123"这个字符串,那么把其地址给到 a 即可.
如果没有,则会在常量池中增加"123",然后把地址给到a.
2 . 方式二 创建时会先在 堆 内存中创建一个对象,然后把该对象地址给到 b ,并且同时会在常量池中查找,如果没有,则会在常量池中
也增加一个"123"常量. 相当于创建了 两个对象.