Tipps für das Klonen von Java-Objekten

Ihrer Voreinstellung nach unterstützen die Klassen in Java das Klonen nicht; die voreingestellte Implementierung der clone()-Methode gibt eine CloneNotSupportedException aus. Die Implementierung der clone()-Methode sollte übergangen werden. Man erinnere sich, dass diese öffentlich gemacht werden muss und dass innerhalb der Methode die erste Handlung super.clone() zwingend ist.

Klassen, die das Klonen erlauben sollen, brauchen die Implementierung des Markierungs-Interfaces Clonable. Da die voreingestellte Implementierung von Object.clone lediglich eine flache Kopie erzeugt, müssen die Klassen ebenfalls clone übergehen, um bei Bedarf eine eigene Implementierung anzubieten, die eine tiefe Kopie erzeugt. Wenn die Objekte einer Klasse öffentlich zu klonen sein sollen, empfiehlt es sich den Code so zu formulieren:


Reicht eine geschützte Kopie, die einfach blind die Rohdaten des Objekts übernimmt, bedarf es keiner Neudefinierung einer eigenen Version. Gewöhnlich wird jedoch eine öffentliche Version gebraucht. (Achtung: Es besteht keine Möglichkeit, einen Klon mit privater oder standardgemäßer Zugänglichkeit zu erzeugen; die Sichtbarkeit kann nur erhöht werden, wenn man die Voreinstellung übergeht.)

Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Tipps für das Klonen von Java-Objekten

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *