Sobes.tech
Back to questions
Middle
84
questionbank

Как поступить, если необходимо сериализовать объект вашего класса, но одно из его полей не подлежит сериализации?

Sobes Copilot

Get answers in real time

Answer from AI

sobes.tech AI

Аннотацией @Transient или ключевым словом transient.

public class MyObject implements Serializable {
    private int id;
    private String name;
    private transient NonSerializableField nonSerializableField; // Поле, которое не нужно сериализовать
    // или
    // @Transient // Если используется другая библиотека сериализации
    // private NonSerializableField nonSerializableField;

    // Getters and setters
    // ...
}

При использовании @Transient или transient во время сериализации поле nonSerializableField будет проигнорировано, и оно не будет сохранено в потоке данных. При десериализации это поле будет иметь значение по умолчанию (null для объектов).