String str = new String("hello")
Он проверит, содержит ли пул константных строк String "hello"? Если присутствует, то он не будет добавлять запись в пул строк String. Если нет, то он добавит запись в пул строк String.
Объект будет создан в области памяти кучи, а str
указывает на объект, созданный в ячейке памяти кучи.
, если вы хотите str
ссылаться на объект точки, содержащийся в Строковый пул констант, то нужно явно вызвать str.intern();
String str = "world";
. Он проверит, содержит ли пул констант String уже строку «hello»? Если присутствует, то он не будет добавлять запись в пул строк String. Если нет, то он добавит запись в пул констант String.
В обоих случаях регистр str
указывает на String "world"
, присутствующий в пуле констант.