Sobes.tech
Назад к вопросам
Junior — Middle
51

Можете объяснить, что означает интерфейс Serializable в Java и для чего он используется?

Ответ от нейросети

sobes.tech AI

В Java интерфейс Serializable служит для обозначения, что объект данного класса может быть сериализован — то есть преобразован в последовательность байтов для сохранения или передачи.

Это используется, например, для:

  • Сохранения состояния объекта на диск.
  • Передачи объекта по сети.
  • Кэширования объектов.

Интерфейс не содержит методов, он является маркерным. Чтобы сделать класс сериализуемым, достаточно реализовать Serializable:

import java.io.Serializable;

public class User implements Serializable {
    private String name;
    private int age;
    // геттеры, сеттеры, конструкторы
}

При сериализации JVM автоматически сохраняет состояние всех полей объекта, кроме тех, которые объявлены как transient.