G
Guest
Gast
Hallo allerseits
Ich habe ein kleines Problem mit Object casts oder reflection. Folgendes:
Unten hab ich den Code. Mein Problem ist, dass ich in der Test-Klasse auf
die Values der "Implementatoren" zugreife aber vorher nicht weiss, was
auch mich zukommt. getClass() liefert ja die Klasse und die strimmt. Nur
kann ich das auch so erstellen?
Baum = list.get(0).getValue();
Oder ist dies ein absolut schlechter Stil? Hat jemand Ideen?
Ich hoffe es ist einigermassen Verständlich.
Ich habe ein kleines Problem mit Object casts oder reflection. Folgendes:
Unten hab ich den Code. Mein Problem ist, dass ich in der Test-Klasse auf
die Values der "Implementatoren" zugreife aber vorher nicht weiss, was
auch mich zukommt. getClass() liefert ja die Klasse und die strimmt. Nur
kann ich das auch so erstellen?
Baum = list.get(0).getValue();
Oder ist dies ein absolut schlechter Stil? Hat jemand Ideen?
Ich hoffe es ist einigermassen Verständlich.
Code:
public interface Value<E> {
public void setValue(E e);
public E getValue();
}
public BaumValue implements Value<Baum>{
private Baum baum;
public void setValue(Baum e){this.baum = e;}
public Baum getValue(){return baum;}
}
public HausValue implements Value<Haus>{
private Haus haus;
public void setValue(Haus e){this.haus = e;}
public Haus getValue(){return haus;}
}
public Test{
List<Value<?>> l = new ArrayList<Value<?>>();
l.add(new BaumValue());
l.add(new HausValue());
Object baum = l.get(0).getValue();
Object haus = l.get(1).getValue();
}