Moin,
ich möchte gerne in einer Hashmap einpaar Klassen mit verschiedenen Namen regestrieren und von diesen dann je nach Aufruf eine Instanz erzeugen. Ich habe im folgenden ein kleines Beispiel und würde mich über Tipps ob es so funktionieren könnte freuen
PS: Müssen die Klassen die ich regestriren möchte statisch sein? Was ist eigentlich der Unterschied zwieschen von einer Klasse ein Objekt erzeugen oder eine Klasse mit der Endung .class aufrufen also Klassenname.class?
Gruß
ich möchte gerne in einer Hashmap einpaar Klassen mit verschiedenen Namen regestrieren und von diesen dann je nach Aufruf eine Instanz erzeugen. Ich habe im folgenden ein kleines Beispiel und würde mich über Tipps ob es so funktionieren könnte freuen
PS: Müssen die Klassen die ich regestriren möchte statisch sein? Was ist eigentlich der Unterschied zwieschen von einer Klasse ein Objekt erzeugen oder eine Klasse mit der Endung .class aufrufen also Klassenname.class?
Java:
public class CallHandler
{
protected static final String WARENKORB = "Warenkorb",
BESTELLUNG= "Bestellung", SUCHE = "Suche";
public static Hashtable<String, Class> handlerHashmap = new Hashtable<String, Class>();
//Die Klassen regestrieren
static {
handlerHashmap.put(WARENKORB,Warenkorb.class);
handlerHashmap.put(BESTELLUNG,Bestellung.class);
handlerHashmap.put(SUCHE ,Suche.class);
}
static void registerHandler(String name, Class klasse)
{
if (WARENKORB.equalsIgnoreCase(name))
//Instanz der Klasse erzeugen
else
if (SUCHE.equalsIgnoreCase(name))
//Instanz der Klasse erzeugen
else
if (BESTELLUNG.equalsIgnoreCase(name))
//Instanz der Klasse erzeugen
else
{
//Fehlermeldung
}
}
}
Gruß
Zuletzt bearbeitet: