Hallöchen!
Ich habe ein Object Array einem Konstruktor übergeben:
In diesem Array sind nochmals fünf ArrayLists.
Nun will ich, um später Veränderungen abgleichen zu können, dieses Array so klonen, dass auch die beinhalteten ArrayLists geklont werden.
Ich brauche später zwei verschiedene Versionen...
Habe es mal so versucht:
Und dann noch die Methode Clone() (vorher implementiert die Klasse myTableModel2 natürlich "Cloneable")
Nun komme ich nicht weiter.
Wenn ich später rumeditiere und dann zwei Object Arrays an eine andere Klasse übergebe:
Wobei "result" die überschriebenen Daten enthält, und ich dann diese mit den vorher geklonten Daten aus "datenalt" vergleichen will.
Wo es hakt, ist das Klonen der darin befindlichen Arrays... Also ich brauche eine tiefe Kopie, nicht zwei Referenzen die auf die selben eingebetteten Objekte zeigen...
Bitte Hilfe :/
Gruß
Myar
Ich habe ein Object Array einem Konstruktor übergeben:
Code:
public MyTableModel2(Object[] daten)
In diesem Array sind nochmals fünf ArrayLists.
Nun will ich, um später Veränderungen abgleichen zu können, dieses Array so klonen, dass auch die beinhalteten ArrayLists geklont werden.
Ich brauche später zwei verschiedene Versionen...
Habe es mal so versucht:
Code:
private Object[] datenalt;
/**
* Default Konstruktor
*/
public MyTableModel2() {
}
/**
* Hier die Daten an die Instanz des Tablemodels übergeben
*/
public MyTableModel2(Object[] daten) {
Object[] obj1 = daten;
this.datenalt = (Object[]) obj1.clone();
//etc.
Und dann noch die Methode Clone() (vorher implementiert die Klasse myTableModel2 natürlich "Cloneable")
Code:
@Override
public Object[] clone(){
try{
return (Object[]) super.clone();
}catch( CloneNotSupportedException e ){
return null;
}
}
Nun komme ich nicht weiter.
Wenn ich später rumeditiere und dann zwei Object Arrays an eine andere Klasse übergebe:
Code:
new speichern(result, datenalt);
Wobei "result" die überschriebenen Daten enthält, und ich dann diese mit den vorher geklonten Daten aus "datenalt" vergleichen will.
Wo es hakt, ist das Klonen der darin befindlichen Arrays... Also ich brauche eine tiefe Kopie, nicht zwei Referenzen die auf die selben eingebetteten Objekte zeigen...
Bitte Hilfe :/
Gruß
Myar