1. Serialisierung implementieren:
1) Verwenden Sie die Serializable-Schnittstelle, um die Serialisierung zu implementieren
Zuerst definieren wir eine Objektklasse Benutzer
public class User implements Serializable { //序列化ID private static final long serialVersionUID = 1L; private int age; private String name; //getter和setter方法、 //toString方法}
Als nächstes implementieren Sie die Serialisierung und Deserialisierung in der Testklasse.
public class Test { public static void main(String[] args) throws Exception, IOException { //SerializeUser(); DeSerializeUser(); } //序列化方法 private static void SerializeUser() throws FileNotFoundException, IOException { User user = new User(); user.setName("Java的架构师技术栈"); user.setAge(24); //序列化对象到文件中 ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("G://Test/template")); oos.writeObject(user); oos.close(); System.out.println("序列化对象成功"); } //反序列化方法 private static void DeSerializeUser() throws FileNotFoundException, IOException{ File file = new File("G://Test/template"); ObjectInputStream ois = new ObjectInputStream(new FileInputStream(file)); User newUser = (User)ois.readObject(); System.out.println("反序列化对象成功"+newUser.toString()); }}
2) Verwenden Sie die Externalizable-Schnittstelle, um die Serialisierung zu implementieren
Definieren Sie zunächst eine User1-Klasse
public class User1 implements Externalizable{ private int age; private String name; //getter、setter //toString方法 public User1() {} @Override public void writeExternal(ObjectOutput out) throws IOException { } @Override public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException { }}
Der Unterschied zwischen Externalizable- und Serializable-Schnittstellen:
1) Externalizable erbt von der Serializable-Schnittstelle
2) Wir müssen die Methoden writeExternal() und readExternal() neu schreiben
3) Die Klasse, die die Externalizable-Schnittstelle implementiert, muss Stellen Sie einen öffentlichen Konstruktor ohne Parameter bereit.
2. Funktion:
1) Serialisierung ist ein Mechanismus zur Verarbeitung von Objektströmen. Der sogenannte Objektstrom dient dazu, den Inhalt des Objekts zu streamen Wenn Sie Lese- und Schreibvorgänge ausführen, können Sie auch gestreamte Objekte in das und aus dem Netzwerk übertragen sein Daten-Out-of-Order-Problem)
3) Zusätzlich zur Erzielung der Objektpersistenz kann die Serialisierung auch zum tiefen Klonen von Objekten verwendet werden
3 >1) Speichern Sie das Objekt dauerhaft und speichern Sie die Bytesequenz des Objekts in einer lokalen Datei oder Datenbank
2) Übertragen und empfangen Sie das Objekt in Form eines Bytestreams durch Serialisierung; 3) Übertragen Sie Objekte zwischen Prozessen durch Serialisierung.
Weitere Java-Kenntnisse finden Sie in der Spalte
Java-Grundlagen-Tutorial.
Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Serialisierung in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!