16.11.2013 Aufrufe

Programmieren in Java - HostFiXX.de

Programmieren in Java - HostFiXX.de

Programmieren in Java - HostFiXX.de

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>Programmieren</strong> <strong>in</strong> <strong>Java</strong><br />

Die Metho<strong>de</strong> public f<strong>in</strong>al void writeObject(Object obj) throws<br />

IOException schreibt folgen<strong>de</strong> Daten <strong>in</strong> <strong>de</strong>n OutputStream:<br />

- Die Klasse <strong>de</strong>s als Argument übergebenen Objekts<br />

- Die Signatur <strong>de</strong>r Klasse<br />

- Alle nicht statischen, nicht transienten Membervariablen <strong>de</strong>s übergebenen Objekts e<strong>in</strong>schl. <strong>de</strong>r aus<br />

Elternklassen geerbten Membervariablen.<br />

Bsp.: Serialisierung e<strong>in</strong>es „Zeit-“ Objekts. Das Zeit-Objekt ist e<strong>in</strong>e Instanz <strong>de</strong>r<br />

Klasse „Zeit“, die e<strong>in</strong>e Uhrzeit (Stun<strong>de</strong>, M<strong>in</strong>ute) kapselt.<br />

import java.io.*;<br />

public class Zeit implements Serializable<br />

{<br />

private <strong>in</strong>t stun<strong>de</strong>;<br />

private <strong>in</strong>t m<strong>in</strong>ute;<br />

public Zeit(<strong>in</strong>t stun<strong>de</strong>, <strong>in</strong>t m<strong>in</strong>ute)<br />

{<br />

this.stun<strong>de</strong> = stun<strong>de</strong>;<br />

this.m<strong>in</strong>ute = m<strong>in</strong>ute;<br />

}<br />

public Str<strong>in</strong>g toStr<strong>in</strong>g()<br />

{<br />

return stun<strong>de</strong> + ":" + m<strong>in</strong>ute;<br />

}<br />

}<br />

Mit Hilfe e<strong>in</strong>es Objekts vom Typ ObjectOutputStream kann e<strong>in</strong> Time-Objekt<br />

serialisiert wer<strong>de</strong>n.<br />

import java.io.*;<br />

import java.util.*;<br />

public class Pr81100<br />

{<br />

public static void ma<strong>in</strong>(Str<strong>in</strong>g args[])<br />

{<br />

try {<br />

FileOutputStream fs = new FileOutputStream("test1.ser");<br />

ObjectOutputStream os = new ObjectOutputStream(fs);<br />

Zeit z = new Zeit(10,20);<br />

os.writeObject(z);<br />

os.close();<br />

}<br />

catch(IOException e)<br />

{ System.err.pr<strong>in</strong>tln(e.toStr<strong>in</strong>g()); }<br />

}<br />

}<br />

Nach <strong>de</strong>m Schließen <strong>de</strong>s Streams steht das serialisierte Objekt <strong>in</strong> „test1.ser“.<br />

493

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!