05.08.2013 Aufrufe

Cornelia Heinisch, Frank Müller-Hofmann, Joachim Goll ... - HSR-Wiki

Cornelia Heinisch, Frank Müller-Hofmann, Joachim Goll ... - HSR-Wiki

Cornelia Heinisch, Frank Müller-Hofmann, Joachim Goll ... - HSR-Wiki

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Datentypen und Variablen 189<br />

Wird auf einen Referenztyp der Zeichenverkettungsoperator<br />

angewandt, so wird die toString()-Methode des entsprechenden<br />

Objektes aufgerufen.<br />

Bei dem Aufruf von<br />

System.out.println ("Double: " + arr.pop());<br />

wird also in Wirklichkeit<br />

System.out.println ("Double: " + arr.pop().toString());<br />

aufgerufen.<br />

Wird an println() ein Referenztyp ref übergeben:<br />

System.out.println (ref);<br />

so wird<br />

System.out.println (ref.toString());<br />

aufgerufen.<br />

Die toString()-Methode ist bei den Wrapper-Klassen derart implementiert, dass<br />

immer die String-Repräsentation des gekapselten elementaren Datentyps zurückgegeben<br />

wird. Warum jedoch in obigem Beispiel der Klasse EasyStack bei<br />

arr.pop() die korrekte toString()-Methode des entsprechenden Objektes der<br />

Wrapper-Klasse – und nicht die toString()-Methode der Klasse Object –<br />

aufgerufen wird, liegt an der dynamischen Bindung und kann erst in Kapitel 11.4.2<br />

erklärt werden.<br />

Die Stringrepräsentation eines Referenztyps wird erzeugt, indem<br />

die toString()-Methode des entsprechenden Objektes<br />

aufgerufen wird.<br />

6.9 Boxing und Unboxing<br />

In Java werden Wrapper-Klassen benötigt, um Werte einfacher Datentypen in<br />

Objektform zu "verpacken". Will man dann wieder den Wert als einfachen Typ haben,<br />

so muss man diesen aus dem Objekt "auspacken". Das "Verpacken" bezeichnet man<br />

als Boxing, das "Auspacken" als Unboxing.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!