Datenströme

Serialisierung

Die Schnittstelle java.io.Serializable *

  1. Schreibe ein Programm, welches ein java.util.HashMap-Objekt serialisiert. Anschließend schreibe ein Programm, welches die java.util.HashMap wieder ausliest.
  2. Wenn man etwas in die Datei schreibt, etwa Long-Objekte, so lohnt sich ab einer bestimmten Anzahl von geschriebenen Elementen die Komprimierung. Schiebe einen java.util.zip.GZIPOutputStream zwischen java.io.FileOutputStream und java.io.ObjectOutputStream .
  3. Ab welcher Zahl wird die Grenze erreicht, sodass sich eine Komprimierung lohnt?
  4. Wie müssten Daten beschaffen sein, damit eine Kompression nicht mehr möglich ist? Schreibe ein Programm, welches Daten produziert, die schlecht zu komprimieren sind
  5. Betrachte die Implementierung der Klasse java.util.ArrayList . Wie wird er serialisiert? Welche Rolle spielt das zu implementierende Interface? Betrachte die Implementierung der Schnittstelle.

Lösung für das Schreiben und Lesen einer komprimierten HashMap