Frage Was ist Objektserialisierung? (Java)


In nicht so technischer Weise, was ist Objekt-Serialisierung und der Zweck davon? Wann sollte es verwendet werden?

(irgendwelche Analogien sind willkommen)

Danke


5
2018-04-22 19:10


Ursprung


Antworten:


Mit der Objektserialisierung können Sie Objekte (Datenstrukturen) in eine binäre oder eine andere benutzerdefinierte Darstellung transformieren. Dies wiederum kann verwendet werden, um diese binären Darstellungen über die Leitung zu senden oder sie in einem Dateisystem zu speichern.

Serialisierung kann verwendet werden für

  • Objekte über das Netzwerk senden
  • Beharrlichkeit
  • Deepcopy Objekte Bäume
  • ?

Das Interessante an der Java-Objekt-Serialisierung ist, dass Sie entweder den Standard-Serialisierungsmechanismus verwenden können, der Daten von Objekten in Binärdarstellungen umwandelt, oder ihn durch Implementieren von Methoden aus der Serializable-Schnittstelle anpassen. Außerdem können Sie Daten Ihres Objekts lesen und es "von Hand" serialisieren, d. H. Die Werte lesen und sie in das Format umwandeln, das Sie wollen und wie Sie wollen.

Sehen Sie sich die folgenden Ressourcen an:


7
2018-04-22 19:12



Grundsätzlich ist es eine Möglichkeit, die in einem Objekt gespeicherten Daten zu speichern, z. auf Platte oder über ein Netzwerk übertragen. Das Objekt kann dann später rekonstruiert werden.


4
2018-04-22 19:13



Der einfachste Weg, es zu erklären, ist dies:

Serialisierung ist eine Möglichkeit, die Objekte in Ihrer Anwendung zu nehmen und sie in einem permanenten Format (binär, xml usw.) zu beschreiben.

Einmal serialisiert, kannst du das auf unbestimmte Zeit speichern ... sende sie über den Draht ... lies sie später wieder ... nutze deine Vorstellungskraft.


2
2018-04-22 19:15



Die Objektserialisierung ist der Prozess, bei dem der Status eines Objekts in einer Bytefolge gespeichert wird, sowie der Prozess, diese Byte zu einem späteren Zeitpunkt in ein Live-Objekt umzuwandeln.

Hier ist ein Artikel, der das Thema diskutiert Geheimnisse der Java-Serialisierung


1
2018-04-22 19:14



Da ist ein sehr gute Zusammenfassung hier in einer anderen Stack Overflow Frage. Um das zu zitieren akzeptierte Antwort:

Serialisierung ist die Umwandlung eines   Objekt auf eine Reihe von Bytes, so dass   Das Objekt kann einfach gespeichert werden   persistenter Speicher oder Streaming über   eine Kommunikationsverbindung. Der Byte-Stream   kann dann deserialisiert - konvertiert werden   in eine Replik des ursprünglichen Objekts.


1
2018-04-22 19:17



Nicht technisch: Serialisierung ist der Prozess, eine speicherbasierte Struktur (wie ein Objekt, das normalerweise im Hauptspeicher lebt) zu einer persistenten Festplatte zu streamen. Daher ordnen Sie die Struktur des Objekts vielleicht in etwas wie XML ein.


0
2018-04-22 19:14