Das sauberste ist imo das Factory Pattern:
Code:
interface Factory{
public i createObject();
}
class SFactory implements Factory{
public i createObject(){
return new s();
}
}
class TFactory implements Factory{
public i createObject(){
return new t();
}
}
deinen Code musst du dann wie folgt anpassen:
Code:
Factory factory = null;
if (Math.random() < 0.5) {
factory = new SFactory();
} else {
factory = new TFactory();
}
o = factory.createObject();
// Jetzt will ich das er das obige wiederholt:
o = factory.createObject();