Встречается на собеседованиях • сегодня
С чем связано выделение памяти для новой строки
Выделение памяти для новой строки в Java связано с созданием объекта String в heap. Строки в Java неизменяемы (immutable), поэтому при каждой операции, изменяющей строку (например, конкатенация), создаётся новый объект в памяти.
Пример:
java
String s1 = "Hello"; // Создаётся в пуле строк (String Pool)
String s2 = new String("Hello"); // Явное выделение в heap
String s3 = s1 + " World"; // Новый объект в heapНюансы:
- Литералы (
"...") хранятся в String Pool для оптимизации. new String()всегда создаёт новый объект в heap.- Конкатенация (
+,concat()) приводит к созданию новых объектов, если результат не закеширован. - Для эффективной работы с изменяемыми строками используют
StringBuilder/StringBuffer.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы