💡Разбор вопросов с собеседований Java Junior



Как написать immutable класс?



Чтоб написать immutable неизменяемый класс, нужно следовать простым пунктам:

⁃ сделать класс финальным.

⁃ сделать все поля приватными и создать только геттеры к ним. Сеттеры, разумеется, не нужно.

⁃ сделать все mutable поля final, чтобы установить значение можно было только один раз.

⁃ инициализировать все поля через конструктор, выполняя глубокое копирование (то есть, копируя и сам объект, и его переменные, и переменные переменных, и так далее).

⁃ клонировать объекты mutable переменных в геттерах, чтобы возвращать только копии значений, а не ссылки на актуальные объекты.