new String("abc"); 创建了几个对象
时间: 2024-02-12 16:40:03 浏览: 92
创建了两个对象。一个是"abc"字符串在常量池中的对象,另一个是通过new关键字创建的"abc"字符串在堆上的对象。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [new String()创建几个对象?](https://blog.csdn.net/weixin_49698553/article/details/125235843)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
相关问题
new String("abc") 创建了几个对象
new String("abc") 创建了两个对象。首先,在常量池中创建了一个字符串对象"abc",然后通过new操作在堆内存中创建了另一个String对象,存储着对常量池中"abc"字符串的引用。所以总共创建了两个对象。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [new String()创建几个对象?](https://blog.csdn.net/weixin_49698553/article/details/125235843)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
String s = new String("abc"); 产生了几个String对象
String s = new String("abc"); 语句产生了两个String对象。
第一个String对象是字面值"abc",它是在编译时创建的。当编译器遇到这个字面值时,会在常量池中创建一个String对象,如果常量池中已经存在相同的字符串,则直接引用已存在的对象。
第二个String对象是通过new关键字创建的,它是在运行时创建的。这个对象会在堆内存中分配空间,并将字面值"abc"复制到堆内存中的新对象中。
阅读全文