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 — неизменяемый, его состояние нельзя изменить после создания.