String hello = new String(new char[]{'H', 'e', 'l', 'l', 'o'});
hello.intern();
我知道在new
使用运算符时,hello
变量是指String
堆上的对象。在下一行中,由于它是实习的,因此在字符串池中创建了一个新对象,假设“Hello”不存在。
在这种情况下,String
堆上的对象是否有资格进行垃圾回收?
我知道字符串池是从 Java 7 开始的堆的一部分。
String hello = new String(new char[]{'H', 'e', 'l', 'l', 'o'});
hello.intern();
我知道在new
使用运算符时,hello
变量是指String
堆上的对象。在下一行中,由于它是实习的,因此在字符串池中创建了一个新对象,假设“Hello”不存在。
在这种情况下,String
堆上的对象是否有资格进行垃圾回收?
我知道字符串池是从 Java 7 开始的堆的一部分。