Сериализация и клонирование
Повтори преобразование состояния объекта в представление для сохранения или передачи и способы копирования объектов. Разбери Serializable, Externalizable, назначение serialVersionUID и особенности клонирования в Java.
Вопросы
- Что такое сериализация и как она реализована в Java?
- Для чего нужна сериализация?
- Опишите процесс сериализации/десериализации с использованием Serializable.
- Как изменить стандартное поведение сериализации/десериализации?
- Какие поля не будут сериализованы при сериализации? Будет ли сериализовано final поле?
- Как создать собственный протокол сериализации?
- Какая роль поля serialVersionUID в сериализации?
- Когда стоит изменять значение поля serialVersionUID?
- В чем проблема сериализации Singleton?
- Расскажите про клонирование объектов.
- В чем отличие между поверхностным и глубоким клонированием?
- Какой способ клонирования предпочтительней?
- Почему метод clone() объявлен в классе Object, а не в интерфейсе Cloneable?
- Как создать глубокую копию объекта? (2 способа)