Встречается на собеседованиях • сегодня
Что становится неизменяемым при использовании final: класс или экземпляр класса
Ключевое слово final делает неизменяемым сам класс, а не его экземпляры. Класс, объявленный как final, нельзя наследовать (расширять). Однако экземпляры такого класса остаются изменяемыми, если их поля не помечены как final или не имеют других ограничений.
Пример:
java
final class ImmutableClass { // Нельзя наследовать
private int value;
public ImmutableClass(int value) {
this.value = value;
}
public void setValue(int value) { // Метод изменяет состояние
this.value = value;
}
}
// Ошибка компиляции: нельзя наследовать final-класс
// class ChildClass extends ImmutableClass {}Экземпляры ImmutableClass можно изменять через setValue(). Для неизменяемости экземпляров нужно делать поля final и не предоставлять сеттеров.

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