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 />

System.out.pr<strong>in</strong>tln("a.equals(\"test\") " + a.equals("test")); // true<br />

System.out.pr<strong>in</strong>tln("c.equals(\"test\") " + c.equals("test")); // true<br />

}<br />

}<br />

Kopieren von Objekten<br />

Die clone()-Metho<strong>de</strong> erzeugt e<strong>in</strong> Duplikat als Kopie e<strong>in</strong>es Objekts. Damit e<strong>in</strong><br />

Objekt geklont wer<strong>de</strong>n kann, muß es die „Cloneable“-Schnittstelle unterstützen.<br />

Die Cloneable-Schnittstelle im Paket java.lang hat selbst ke<strong>in</strong>e Metho<strong>de</strong>n, sie<br />

dient lediglich als Indikator dafür, daß e<strong>in</strong> Objekt geklont wer<strong>de</strong>n kann. Das Format<br />

für die clone()-Metho<strong>de</strong> ist: protected Object clone() throws<br />

CloneNotSupportedException<br />

Bsp.: Die Klasse Rechentafel erhält e<strong>in</strong>e clone()-Metho<strong>de</strong> zum Klonen von<br />

Rechentafel-Objekten 97 .<br />

public class Rechentafel implements Cloneable<br />

{<br />

// Instanzvariable<br />

private <strong>in</strong>t ersterOperand = 0;<br />

private <strong>in</strong>t zweiterOperand = 0;<br />

private <strong>in</strong>t nummer;<br />

// I<strong>de</strong>ntifikationsnummer<br />

// Klassenvariable<br />

static <strong>in</strong>t anzRechenobjekte = 0;<br />

// Konstruktoren<br />

Rechentafel()<br />

{<br />

this(0,1);<br />

}<br />

Rechentafel(<strong>in</strong>t ersterOperand, <strong>in</strong>t zweiterOperand)<br />

{<br />

super();<br />

this.ersterOperand = ersterOperand;<br />

this.zweiterOperand = zweiterOperand;<br />

nummer = ++anzRechenobjekte;<br />

}<br />

// Kopierkonstruktor<br />

Rechentafel(Rechentafel rechenObjekt)<br />

{<br />

this(rechenObjekt.ersterOperand,rechenObjekt.zweiterOperand);<br />

}<br />

// Operationen<br />

public <strong>in</strong>t holersterOperand()<br />

{<br />

return ersterOperand;<br />

}<br />

public void setzersterOperand(<strong>in</strong>t ersterOperand)<br />

{<br />

this.ersterOperand = ersterOperand;<br />

}<br />

public <strong>in</strong>t holzweiterOperand()<br />

{<br />

return zweiterOperand;<br />

}<br />

public void setzweiterOperand(<strong>in</strong>t zweiterOperand)<br />

{<br />

this.zweiterOperand = zweiterOperand;<br />

}<br />

public <strong>in</strong>t addiere()<br />

97 pr14202<br />

77

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!