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.)

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Business GPT: Generative KI für den Unternehmenseinsatz

Nutzung einer unternehmenseigenen GPT-Umgebung für sicheren und datenschutzkonformen Zugriff.

2 Tagen ago

Alphabet übertrifft die Erwartungen im ersten Quartal

Der Umsatz steigt um 15 Prozent, der Nettogewinn um 57 Prozent. Im nachbörslichen Handel kassiert…

5 Tagen ago

Microsoft steigert Umsatz und Gewinn im dritten Fiskalquartal

Aus 61,9 Milliarden Dollar generiert das Unternehmen einen Nettoprofit von 21,9 Milliarden Dollar. Das größte…

5 Tagen ago

Digitalisierung! Aber wie?

Mehr Digitalisierung wird von den Unternehmen gefordert. Für KMU ist die Umsetzung jedoch nicht trivial,…

5 Tagen ago

Meta meldet Gewinnsprung im ersten Quartal

Der Nettoprofi wächst um 117 Prozent. Auch beim Umsatz erzielt die Facebook-Mutter ein deutliches Plus.…

6 Tagen ago

Maximieren Sie Kundenzufriedenheit mit strategischem, kundenorientiertem Marketing

Vom Standpunkt eines Verbrauchers aus betrachtet, stellt sich die Frage: Wie relevant und persönlich sind…

6 Tagen ago