Werte von Objekten gleichsetzen


tecla

Erfahrenes Mitglied
Hallo zusammen
Ich hab ne grundsätzliche Frage.
Wenn ich ein Objekt einer Klasse habe und ich hätte jetzt gern ein Objekt der gleichen Klasse mit den gleichen Werten drin, dann kann ich das zwar schon so machen:
Code:
myClass Object1 = new myClass();
Object1.Attr1 = 5;
Object1.Attr2 = "Hallo";

myClass Object2 = new myClass();
Object2 = Object1;
Aber das gibt mir ja lediglich eine Referenz auf Object1, dh.Object1 verändert sich mit, wenn ich anschliessend die Werte von Object2 verändere:
Code:
Oject2.Attr1 = 7            //bedeutet dass Object1.Attr1 ebenfalls 7 wird

Natürlich könnte ich das so lösen, dass ich jeden einzelnen Wert übergebe, statt die Objecte gleichzusetzen:

Code:
myClass Object1 = new myClass();
Object1.Attr1 = 5;
Object1.Attr2 = "Hallo";

myClass Object2 = new myClass();
Object2.Attr1 = Object1.Attr1;
Object2.Attr2 = Object1.Attr2;

Dazu bin ich aber zu faul, wenn es sich um viele Attribute handelt.

Wie verdoppelt man also elegant ein Objekt, ohne dass es einfach eine Referenz auf das alte Objekt wird?

Grüsse, Tecla
 

tecla

Erfahrenes Mitglied
Herzlichen Dank ihr beiden, ICloneable ist genau was ich gesucht habe.
Danke auch für die Links zu deinem Blog, perfekt zusammengetragene Infos, auf dem Silbertablett serviert. Super Service!

Grüsse, Tecla

EDIT: Ich kann aus mir unerfindlichen Gründen nur engelmarkus bewerten, sorry norbert...