Загрузка страницы

Java SE. Урок 32. Сериализация | Десериализация Объектов

Сериализация - это процесс преобразования объектов в потоки байтов для хранения.

Десериализация - процесс извлечение объекта из потока байтов.

Для сериализации объекта, его класс должен реализовывать либо интерфейс Serializable либо Externalizable. Поля класса также должны реализовывать данные интерфейсы, если они являются объектами. Интерфейс Serializable является интерфейсом-маркером-меткой, и не требует реализации каких либо методов. В случае с интерфейсом Externalizable необходимо будет переопределить методы readObject/writeObject

Значения полей помеченные спецификаторами transient и static не сериализуются (не сохраняются). Единственным исключением является поле:
private static final long serialVersionUID которое сериализуется вместе с объектом. Оно вычисляется по содержимому класса либо устанавливается программистом самостоятельно. После сериализации объекта стоит знать, что изменив содержимое класса объект восстановить не получиться.

При десериализации поля помеченные transient восстанавливаются по умолчанию. Если это ссылочные типы - то null.

При десериализации поля помеченные static восстанавливаются по умолчанию в случае отсутствия в области видимости объектов данного класса. В противном случае - принимают значения актуальные в данный момент.

Для записи объекта используется метод writeObject класса ObjectOutputStream, для чтения соответственно readObject класса ObjectInputStream.

Видео Java SE. Урок 32. Сериализация | Десериализация Объектов канала Follow the white rabbit
Показать
Комментарии отсутствуют
Введите заголовок:

Введите адрес ссылки:

Введите адрес видео с YouTube:

Зарегистрируйтесь или войдите с
Информация о видео
6 марта 2017 г. 18:35:26
00:21:22
Яндекс.Метрика