Guten Abend zusammen,
ich möchte einen array von Objekten in einem "Sicherungsobjekt" speichern und dann wieder zurückholen ... und das funktioniert nicht.
Ganz einfach:
die Klasse kfz:
und die "Sicherungsklasse:
Als output gibt es dieses:
Warum kann ich die "alten" Werte nicht wieder aus dem grade erzeugten Objekt spst[0] wieder rauszaubern ?? Echt simpel eigentlich ... aber geht nicht.
Weiß jemand warum ?? Und wie geht's ??
Danke im voraus
JRookie
ich möchte einen array von Objekten in einem "Sicherungsobjekt" speichern und dann wieder zurückholen ... und das funktioniert nicht.
Ganz einfach:
Code:
public class Autos {
public static void main(String[] args) {
kfz[] a1 = new kfz [3] ;
kfz[] a2 = new kfz [3] ;
Werkstatt [] spst = new Werkstatt [99] ;
a1[0] = new kfz() ;
a1[0].setName("Audi");
a1[0].setAnz_raeder(4);
a1[1] = new kfz() ;
a1[1].setName("VW");
a1[1].setAnz_raeder(5);
for (int i = 0; i<2;i++) {
System.out.println("Hier Autos: " + a1[i].getName() + " Raeder: " + a1[i].getAnz_raeder() );
}
spst[0] = new Werkstatt() ; // der Versuch, alles in Werkstatt zu sichern
spst[0].setUps(a1);
a1[0].setName("XXX"); // ändere die bisherigen Werte
a1[0].setAnz_raeder(14);
a1[1] = new kfz() ;
a1[1].setName("YYY");
a1[1].setAnz_raeder(15);
a2 = spst[0].getUps(); // der Versuch, die alten Werte aus Werkstatt zurückzuholen
for (int i = 0; i<2;i++) {
System.out.println("Hier Autos: " + a2[i].getName() + " Raeder: " + a2[i].getAnz_raeder() );
}
}
}
Code:
public class kfz {
private String name;
private int anz_raeder;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAnz_raeder() {
return anz_raeder;
}
public void setAnz_raeder(int anz_raeder) {
this.anz_raeder = anz_raeder;
}
}
Code:
public class Werkstatt {
kfz[] ups = new kfz [3] ;
public Werkstatt()
{
}
public kfz[] getUps() {
return ups;
}
public void setUps(kfz[] ups) {
this.ups = ups;
}
}
Code:
Hier Autos: Audi Raeder: 4
Hier Autos: VW Raeder: 5
Hier Autos: XXX Raeder: 14
Hier Autos: YYY Raeder: 15
Weiß jemand warum ?? Und wie geht's ??
Danke im voraus
JRookie