2009-04-22 14 views
5

W nie tak techniczny sposób, czym jest serializacja obiektów i ich cel? Kiedy należy go użyć?Co to jest serializacja obiektów? (Java)

(żadnych analogii exampls mile widziane)

Dziękuję

+0

Cóż, to było już wcześniej zadawane: http://stackoverflow.com/questions/447898/what-is-object-serialization –

Odpowiedz

7

serializacji obiektu pozwala na przekształcanie obiektów (datastructures) w binarnym lub innej niestandardowej reprezentacji. To z kolei może być użyte do wysłania tych binarnych reprezentacji przez przewód lub do przechowywania ich w systemie plików.

serializacji może być stosowany do

  • Wysyłanie obiektów przez sieć
  • Trwałość
  • deepcopy sprzeciwia drzew
  • ?

W rzeczywistości interesująca sprawa serializacji obiektów Java polega na tym, że można użyć standardowego mechanizmu serializacji, który przekształca dane z obiektów na reprezentacje binarne lub dostosowuje je za pomocą metod z interfejsu Serializable. Oprócz tego możesz odczytać dane obiektu i serializować je "ręcznie", tj. Odczytać wartości i przekształcić je w dowolny format, jaki chcesz i jak chcesz.

Wystarczy popatrzeć na następujących źródłach:

+0

Czy chciałeś umieścić coś tam, gdzie jest znak zapytania? –

+0

Nie, właśnie zastanawiałem się, jakie mogą być inne przypadki użycia serializacji. Masz pomysł? – paweloque

4

Zasadniczo jest to sposób zapisywania danych przechowywanych w obiekcie, np na dysk lub do przesyłania w sieci. Obiekt może być później zrekonstruowany.

0

Nie techniczne: serializacja to proces przesyłania strumieniowego struktury opartej na pamięci (np. Obiekt normalny w pamięci głównej) na coś trwałego, zwykle na dysku twardym. Dlatego możesz mapować strukturę obiektu na coś podobnego do XML.

1

Serializacja obiektów to proces zapisywania stanu obiektu do sekwencji bajtów, a także proces przebudowy tych bajtów na obiekt aktywny w przyszłości.

Oto artykuł, który omawia Secrets of the Java Serialization

2

Najprostszym sposobem, aby to wyjaśnić to:

serializacji jest sposobem na podjęcie obiektów w aplikacji i opisać je w jakimś stałym formacie (binarne, XML itp.).

Raz Serializowany, można przechowywać w nieskończoność ... wysłać je przez przewód ... przeczytaj je później ... użyj swojej wyobraźni.

1

Istnieje very good summary here w innym pytaniu o przepełnienie stosu.Cytując accepted answer:

serializacji jest konwersja obiektu do serii bajtów, tak że obiekt może być łatwo zapisane w pamięci trwałej lub przesyłane przez łącza komunikacyjnego. Strumień bajtów można następnie przekształcić z postaci szeregowej - przekształcić w replikę oryginalnego obiektu.