Java-Serialisierung und -Deserialisierung umfasst die folgenden Schritte: Schreiben einer Klasse, die die Serializable-Schnittstelle in einen Stream implementiert (Serialisierung). Liest (deserialisiert) das Objekt aus dem Stream.
Serialisierung
Serializable
implementiert. Serializable
接口的类。ObjectOutputStream
对象,并将其与一个文件或字节流关联。ObjectOutputStream.writeObject()
方法将对象写入流中。示例代码:
import java.io.FileOutputStream; import java.io.ObjectOutputStream; public class Employee implements Serializable { private String name; private int age; // 省略getter和setter方法 public static void main(String[] args) { Employee employee = new Employee("John", 30); try (ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream("employee.txt"))) { out.writeObject(employee); } catch (Exception e) { e.printStackTrace(); } } }
反序列化
ObjectInputStream
对象,并将其与一个文件或字节流关联。ObjectInputStream.readObject()
方法读取对象。示例代码:
import java.io.FileInputStream; import java.io.ObjectInputStream; public class DeserializeEmployee { public static void main(String[] args) { try (ObjectInputStream in = new ObjectInputStream(new FileInputStream("employee.txt"))) { Employee employee = (Employee) in.readObject(); System.out.println(employee.getName() + ", " + employee.getAge()); } catch (Exception e) { e.printStackTrace(); } } }
注意事项:
Serializable
ObjectOutputStream
-Objekt und verknüpfen Sie es mit einer Datei oder einem Bytestream. ObjectOutputStream.writeObject()
, um Objekte in den Stream zu schreiben. ObjectInputStream
-Objekt und verknüpft es mit einer Datei oder einem Bytestream. 🎜🎜Verwenden Sie die Methode ObjectInputStream.readObject()
, um das Objekt zu lesen. 🎜🎜🎜Beispielcode: 🎜🎜rrreee🎜🎜Hinweise: 🎜🎜Serializable
implementieren, können serialisiert werden. 🎜🎜Die Reihenfolge der Serialisierung und Deserialisierung muss konsistent sein. 🎜🎜Die Struktur einer Klasse kann sich zwischen Serialisierung und Deserialisierung nicht ändern. 🎜🎜Das Serialisieren von Objekten kann langsam sein, insbesondere bei großen Objekten. 🎜🎜Das obige ist der detaillierte Inhalt vonWas ist der Prozess der Java-Serialisierung und -Deserialisierung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!