hallo,
habe folgendes Problem:
ich schreibe irgendeine Klasse; meinetwegen sowas in die Richtung:
jetzt möchte ich diese Klasse erweitern und zwar so, dass ich sie mit einem anderen Konstruktor aufrufen kann:
... soweit kein Problem.
Natürlich ist es aber nicht ganz so einfach.
Genaugenommen muss ich die Objektattribute erst "auswerten", bevor sie meinen Attributen entsprechen.
Zum Beispiel möchte ich sowas realisieren:
... jetzt meckert natürlich mein Kompiler, dass da was vor dem KOnstruktor steht!
auch der Ansatz:
funktioniert nicht ...
wie kann ich dieses Problem lösen?!
danke für eure Hilfe,
guni
habe folgendes Problem:
ich schreibe irgendeine Klasse; meinetwegen sowas in die Richtung:
Java:
class Klasse {
public Klasse(String arg1, String arg2) {
// mach irgendwas
}
}
jetzt möchte ich diese Klasse erweitern und zwar so, dass ich sie mit einem anderen Konstruktor aufrufen kann:
Java:
class Kindklasse extends Klasse {
public Kindklasse(Objekt o) {
super(o.attr1, o.attr2);
}
}
... soweit kein Problem.
Natürlich ist es aber nicht ganz so einfach.
Genaugenommen muss ich die Objektattribute erst "auswerten", bevor sie meinen Attributen entsprechen.
Zum Beispiel möchte ich sowas realisieren:
Java:
class Kindklasse extends Klasse {
public Kindklasse(Objekt o) {
String arg1 = o.attr.equals("J") ? "JA" : "NEIN";
super(arg1, o.attr2);
}
}
... jetzt meckert natürlich mein Kompiler, dass da was vor dem KOnstruktor steht!
auch der Ansatz:
Java:
class Kindklasse extends Klasse {
private Kindklasse(String arg1, String arg2) {
super(arg1, arg2);
}
public Kindklasse(Objekt o) {
String arg1 = o.attr.equals("J") ? "JA" : "NEIN";
this(arg1, o.attr2);
}
}
funktioniert nicht ...
wie kann ich dieses Problem lösen?!
danke für eure Hilfe,
guni