16.11.2013 Aufrufe

Programmieren in Java - HostFiXX.de

Programmieren in Java - HostFiXX.de

Programmieren in Java - HostFiXX.de

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.

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

Cast<strong>in</strong>g hat e<strong>in</strong>e höhere Priorität als Arithmetik. Deshalb müssen arithmetische<br />

Operationen <strong>in</strong> Verb<strong>in</strong>dung mit Cast<strong>in</strong>g <strong>in</strong> Klammern gesetzt wer<strong>de</strong>n<br />

Nicht alle Konvertierungen s<strong>in</strong>d möglich. Variable e<strong>in</strong>es arithmetischen Typs können<br />

auf je<strong>de</strong>n an<strong>de</strong>ren arithmetischen Typ festgelegt wer<strong>de</strong>n. Boolesche Werte können<br />

nicht auf irgen<strong>de</strong><strong>in</strong>en an<strong>de</strong>ren Wert festgelegt wer<strong>de</strong>n. Die Umkehrung funktioniert<br />

mit E<strong>in</strong>schränkungen: 0 und 1 lassen sich <strong>in</strong> boolesche Werte konvertieren.<br />

Bsp. 162 : Konvertieren primitiver Typen<br />

public class KonvPrim<br />

{<br />

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

{<br />

char z = 'a';<br />

System.out.pr<strong>in</strong>tln("char z = '" + z + '\'');<br />

System.out.pr<strong>in</strong>tln("Unico<strong>de</strong> von z: " + (<strong>in</strong>t) z);<br />

<strong>in</strong>t i = 17;<br />

System.out.pr<strong>in</strong>tln("<strong>in</strong>t i = " + i);<br />

long l = 4L;<br />

System.out.pr<strong>in</strong>tln("long l = " + l);<br />

double d = 17.3;<br />

System.out.pr<strong>in</strong>tln("double d = " + d);<br />

float f = 4.5F;<br />

System.out.pr<strong>in</strong>tln("float f = " + f);<br />

double sd;<br />

float sf;<br />

long sl;<br />

<strong>in</strong>t si;<br />

sd = i + l + d + f;<br />

System.out.pr<strong>in</strong>tln("sd = i + l + d + f = " + sd);<br />

// sf = i + l + d + f;<br />

/* Inkompatibler Typ! */<br />

// System.out.pr<strong>in</strong>tln("sf = i + l + d + f = " + sf);<br />

sf = (float) (i + l + d + f);<br />

// sl = i + l + d + f;<br />

/* Inkompatibler Typ! */<br />

// System.out.pr<strong>in</strong>tln("sl = i + l + d + f = " + sl);<br />

sl = i + l + (long) d + (long) f;<br />

System.out.pr<strong>in</strong>tln("sl = l + i + (long) d + (long) f = " + sl);<br />

sl = (long) (i + l + d + f);<br />

System.out.pr<strong>in</strong>tln("sl = (long) (i + l + d + f) = " + sl);<br />

// si = i + l + d + f;<br />

/* Inkompatibler Typ! */<br />

// System.out.pr<strong>in</strong>tln("si = i + l + d + f = " + si);<br />

si = i + (<strong>in</strong>t) l + (<strong>in</strong>t) d + (<strong>in</strong>t) f;<br />

System.out.pr<strong>in</strong>tln("sl = l + (<strong>in</strong>t) i + (<strong>in</strong>t) d + (<strong>in</strong>t) f = " + sl);<br />

si = (<strong>in</strong>t) (i + l + d + f);<br />

System.out.pr<strong>in</strong>tln("sl = (<strong>in</strong>t) (i + l + d + f) = " + si);<br />

}<br />

}<br />

Konvertieren von Objekten. Mit E<strong>in</strong>schränkungen lassen sich Klassen<strong>in</strong>stanzen <strong>in</strong><br />

Instanzen an<strong>de</strong>rer Klassen konvertieren. Die Klassen müssen allerd<strong>in</strong>gs durch<br />

Vererbung mite<strong>in</strong>an<strong>de</strong>r verbun<strong>de</strong>n se<strong>in</strong>. Allgeme<strong>in</strong> gilt: E<strong>in</strong> Objekt e<strong>in</strong>er Klasse kann<br />

auf se<strong>in</strong>e Superklasse festgelegt wer<strong>de</strong>n. Spezifische Informationen <strong>de</strong>r Subklasse<br />

gehen dabei verloren. Das Konvertieren erfolgt immer nach folgen<strong>de</strong>r Form:<br />

(Klassenname) Objekt.<br />

162 vgl. pr23301<br />

173

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!