La sérialisation et la désérialisation Java impliquent les étapes suivantes : Écriture d'une classe qui implémente l'interface Serialisable dans un flux (sérialisation). Lire (désérialiser) l'objet du flux.
Sérialisation
Sérialisable
. 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
et associez-le à un fichier ou un flux d'octets. ObjectOutputStream.writeObject()
pour écrire des objets dans le flux. ObjectInputStream
et l'associe à un fichier ou un flux d'octets. 🎜🎜Utilisez la méthode ObjectInputStream.readObject()
pour lire l'objet. 🎜🎜🎜Exemple de code : 🎜🎜rrreee🎜🎜Remarques : 🎜🎜Sérialisable
peuvent être sérialisées. 🎜🎜L'ordre de sérialisation et de désérialisation doit être cohérent. 🎜🎜La structure d'une classe ne peut pas changer entre la sérialisation et la désérialisation. 🎜🎜La sérialisation des objets peut être lente, en particulier pour les objets volumineux. 🎜🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!