码上敲享录 > java面试题及答案大全 > new String("a") + new String("b") 会创建几个对象?

new String("a") + new String("b") 会创建几个对象?

上一章章节目录下一章 2023-07-11已有419人阅读 评论(0)

表达式 `new String("a") + new String("b")` 会创建3个对象。让我们逐步分析这个过程:


1. 第一个对象是 `"a"` 的字符串常量,它会在字符串常量池中创建一个对象(Java中的字符串常量是不可变的)。


2. 第二个对象是 `"b"` 的字符串常量,它也会在字符串常量池中创建一个对象。


3. 使用 `new` 关键字创建的第三个对象是拼接后的字符串对象,它在堆内存中创建。`new String("a")` 和 `new String("b")` 分别创建了两个新的字符串对象,然后使用 `+` 运算符进行字符串拼接,生成一个新的字符串对象。


因此,总共创建了3个字符串对象,其中两个在字符串常量池中,一个在堆内存中。需要注意的是,通过 `new` 关键字创建的新的字符串对象可以有自己的独立内存空间,与字符串常量池中的对象不同。


0

有建议,请留言!

  • *您的姓名:

  • *所在城市:

  • *您的联系电话:

    *您的QQ:

  • 咨询问题:

  • 提 交