Junior — Middle
96
Можете ли објаснити шта значи процес претварања објекта у ток података за чување или пренос?
Одговор од АИ
sobes.tech АИ
Процесс преобразования объекта в поток данных называется сериализацией. Это необходимо, чтобы сохранить состояние объекта в файл, базу данных или передать его по сети. При сериализации объект превращается в последовательность байтов, которую можно потом восстановить (десериализовать) обратно в объект.
В Java для этого класс должен реализовывать интерфейс Serializable. Пример:
import java.io.*;
public class User implements Serializable {
private String name;
private int age;
public User(String name, int age) {
this.name = name;
this.age = age;
}
public static void main(String[] args) throws IOException, ClassNotFoundException {
User user = new User("Иван", 30);
// Сериализация
try (ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("user.dat"))) {
oos.writeObject(user);
}
// Десериализация
try (ObjectInputStream ois = new ObjectInputStream(new FileInputStream("user.dat"))) {
User restoredUser = (User) ois.readObject();
System.out.println(restoredUser.name + ", " + restoredUser.age);
}
}
}
Таким образом, сериализация позволяет сохранить или передать объект в удобном формате.