Heim  >  Artikel  >  Java  >  Warum Serialisierung in Java?

Warum Serialisierung in Java?

(*-*)浩
(*-*)浩Original
2019-12-26 13:17:543003Durchsuche

Warum Serialisierung in Java?

Serialisierung ist ein Mechanismus zur Verarbeitung von Objektströmen. (Empfohlenes Lernen: Java-Kurs )

Der sogenannte Objektfluss: besteht darin, den Inhalt des Objekts fließend zu gestalten. Die gestreamten Objekte können gelesen und geschrieben werden, und die gestreamten Objekte können auch zwischen Netzwerken übertragen werden.

Serialisierung soll die Probleme lösen, die beim Lesen und Schreiben von Objektströmen entstehen.

Implementierung der Serialisierung:

Die Klasse, die serialisiert werden muss, implementiert die serialisierbare Schnittstelle (markierte Schnittstelle). Diese Schnittstelle verfügt über keine Methoden, die serialisiert werden müssen Implementiert, implementiert Serializable nur, um zu markieren, dass das Objekt serialisiert werden kann, und verwendet dann einen Ausgabestream (z. B. FileOutputStream), um ein ObjectOutputStream-Objekt (Objektstream) zu erstellen

Verwenden Sie dann das writeObject(Object obj ) des ObjectOutputStream-Objekts Die Methode kann das Objekt, dessen Parameter obj ist, ausschreiben (d. h. seinen Status speichern). Wenn Sie es wiederherstellen möchten, verwenden Sie den Eingabestream.

Wann sollte ich Serialisierung verwenden?

1: Durch die Objektserialisierung können verteilte Objekte realisiert werden.

Hauptanwendungen wie: RMI (Remote Method Invocation) nutzt die Objektserialisierung, um Dienste auf dem Remote-Host auszuführen, genau wie beim Ausführen von Objekten auf dem lokalen Computer.

2: Die Java-Objektserialisierung behält nicht nur die Daten eines Objekts bei, sondern speichert auch rekursiv die Daten jedes Objekts, auf das das Objekt verweist.

Die gesamte Objekthierarchie kann in einen Bytestream geschrieben werden, der in einer Datei gespeichert oder über eine Netzwerkverbindung übertragen werden kann. Die Objektserialisierung kann verwendet werden, um eine „tiefe Kopie“ des Objekts durchzuführen, d. h. das Objekt selbst und das referenzierte Objekt selbst zu kopieren. Durch die Serialisierung eines Objekts kann die gesamte Objektsequenz entstehen.

Dritten: Durch die Serialisierung können Klassen im Speicher in Dateien oder Datenbanken geschrieben werden.

Zum Beispiel: Serialisieren Sie eine Klasse und speichern Sie sie als Datei. Wenn Sie sie das nächste Mal lesen, müssen Sie nur die Daten in der Datei deserialisieren, um die ursprüngliche Klasse im Speicher wiederherzustellen.

Klassen können zur Übertragung auch in Stream-Daten serialisiert werden. Im Allgemeinen wird eine instanziierte Klasse zur Speicherung in eine Datei konvertiert. Wenn Sie sie das nächste Mal instanziieren müssen, müssen Sie sie nur deserialisieren, um die Klasse im Speicher zu instanziieren und alle Variablen und Zustände in der Klasse während der Serialisierung beizubehalten.

Viertens: Objekte, Dateien und Daten liegen in vielen verschiedenen Formaten vor, was es schwierig macht, sie einheitlich zu übertragen und zu speichern.

Nach der Serialisierung wird es zu einem Byte-Stream. Unabhängig davon, um welches Original es sich handelt, kann es in dasselbe umgewandelt und nach der Übertragung in einem gemeinsamen Format gespeichert werden Wenn es abgeschlossen ist, muss es erneut verarbeitet werden. Deserialisieren und wiederherstellen, damit das Objekt immer noch ein Objekt und die Datei immer noch eine Datei ist.

Denn in JAVA werden Objekte in Streams serialisiert zur Übertragung.

Das obige ist der detaillierte Inhalt vonWarum Serialisierung in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn