Встречается на собеседованиях • сегодня

Почему объекты попадают в String Pool

String Pool в Java — это специальная область в heap memory, где хранятся уникальные строковые литералы. Объекты попадают в String Pool автоматически при создании через литералы (String s = "hello") или явно через метод intern(). Это позволяет экономить память, избегая дублирования строк.

Пример:

java
String s1 = "hello"; // Попадает в String Pool
String s2 = new String("hello"); // Создается новый объект в heap
String s3 = s2.intern(); // Помещает строку в пул (если её там нет) и возвращает ссылку

System.out.println(s1 == s3); // true (ссылки на один объект в пуле)

Ключевые моменты:

  • Литералы автоматически интернируются.
  • new String() создает новый объект вне пула.
  • intern() добавляет строку в пул (если её нет) и возвращает ссылку.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы