Sobes.tech
Junior — Middle

Aké sú kľúčové znaky, ktoré odlišujú triedu, ktorej objekty nemožno zmeniť po vytvorení?

sobes.tech AI

Odpoveď od AI

Класс, объекты которого нельзя изменить после создания (immutable), обладает следующими ключевыми признаками:

  • Все поля класса объявлены как final (в Java), что предотвращает их переназначение.
  • Поля либо примитивных типов, либо ссылки на неизменяемые объекты.
  • Отсутствие сеттеров или других методов, изменяющих состояние объекта.
  • Если класс содержит ссылки на изменяемые объекты, он создает их копии при передаче и возвращении, чтобы предотвратить внешние изменения.
  • Класс сам объявлен как final, чтобы предотвратить наследование и изменение поведения.

Пример: класс String в Java — неизменяемый, его состояние нельзя изменить после создания.