java - 当使用 String 文字创建 String 对象时调用哪个 String 类构造函数

标签 java

<分区>

当我们使用 String literal 创建 string 对象时,会调用 string 类的哪个构造函数。

示例:

String str = "hello";

在这种情况下,字符串类的哪个构造函数得到?

最佳答案

当 JVM 加载一个包含字符串文字的类时

String str = "hello";

它从 UTF-8 编码的类文件中读取字符串文字并从中创建一个 char 数组

char[] a = {'h', 'e', 'l', 'l', 'o'};

然后它使用 String(char[]) 构造函数从这个 char 数组创建一个 String 对象

new String(a)

然后JVM将这个String对象放入String池中,并将这个String对象的引用赋值给str变量。

关于java - 当使用 String 文字创建 String 对象时调用哪个 String 类构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17651824/

相关文章:

java - 试图为Java(JSP)中的随机数设置范围,但我不确定如何处理

java - 保存到对象的多个组合索引位置处的 1 个数组的条件

java - 包含撇号字符 U+2019 的字符串在传递给PreparedStatement对象时转换为更多字符

java - Selenium 脚本在弹出窗口打开时挂起,10 分钟后正常运行

java - Apache Camel mockEndpoints() 模拟所有端点,而不是仅模拟建议路由中的端点

Java 的格式说明符重复打印输出

java - 简单的 hibernate 配置

java - Spring 和 Jquery

java - 如何正确设置 Content-Type?

java - 如何使用 setVisibility 恢复可见性