Встречается на собеседованиях • сегодня
Чем обеспечена неизменяемость объектов String
В Java строки неизменяемы благодаря нескольким ключевым механизмам:
- Класс
Stringобъявлен какfinal, что предотвращает наследование и переопределение методов. - Все поля класса помечены как
private final(например,private final char value[]), что делает их недоступными для модификации после инициализации. - Все методы, которые кажутся изменяющими строку (например,
concat(),substring()), на самом деле возвращают новые объектыString.
Пример:
java
String s1 = "Hello";
String s2 = s1.concat(" World"); // Создается новый объект
System.out.println(s1); // "Hello" - оригинальная строка не измениласьНеизменяемость обеспечивает безопасность при многопоточном доступе, кэширование в пуле строк и другие оптимизации JVM.

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