<分区>
当我们使用 String literal 创建 string 对象时,会调用 string 类的哪个构造函数。
示例:
String str = "hello";
在这种情况下,字符串类的哪个构造函数得到?
标签 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/