Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад

Как обеспечить неизменяемость объекта с изменяемыми полями (например, Date)?

Вопрос проверяет умение проектировать неизменяемые объекты и защищаться от побочных изменений состояния.

Короткий ответ

Неизменяемость достигается за счет запрета изменения внутреннего состояния. Для изменяемых полей используется защитное копирование. Объект не должен предоставлять сеттеры. При доступе к полям возвращаются копии, а не оригиналы. Это предотвращает внешнее влияние на состояние объекта.

Длинный ответ

Зарегистрироваться

Развернутый ответ доступен только зарегистрированным пользователям.

Уровень

  • Рейтинг:

    4

  • Сложность:

    6

Навыки

  • Java

    Java

Ключевые слова

#immutability

#defensive copy

#mutable object

Подпишись на Java Developer в телеграм