Сериализация в Java - это процесс преобразования объекта в последовательность байтов, которая может быть сохранена в файле или передана по сети, а затем восстановлена обратно в объект. Это позволяет сохранять состояние объекта и передавать его между различными системами или процессами.
Java предоставляет встроенный механизм сериализации, который позволяет классам быть сериализуемыми. Для того чтобы класс был сериализуемым, он должен реализовывать интерфейс java.io.Serializable. Этот интерфейс не содержит никаких методов, но служит маркером для JVM, что объект этого класса может быть сериализован.
Для сериализации объекта в Java можно использовать классы ObjectOutputStream и ObjectInputStream. ObjectOutputStream используется для записи объекта в поток байтов, а ObjectInputStream - для чтения объекта из потока байтов.
Пример сериализации объекта в Java:
import java.io.*;
public class SerializationExample {
public static void main(String[] args) {
// Создание объекта для сериализации
Person person = new Person("John", 25);
try {
// Создание потока для записи объекта в файл
FileOutputStream fileOut = new FileOutputStream("person.ser");
ObjectOutputStream out = new ObjectOutputStream(fileOut);
// Сериализация объекта
out.writeObject(person);
// Закрытие потоков
out.close();
fileOut.close();
System.out.println("Объект сериализован и сохранен в файл");
} catch (IOException e) {
e.printStackTrace();
}
}
}
class Person implements Serializable {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
}
После выполнения этого кода, объект Person будет сериализован и сохранен в файл "person.ser".
Если вам понравилось, буду признателен за подписку.