Implizite Methoden Aufrufe in Java möglich?

Hallo zusammen

Für ein Projekt möchte ich für ein Objekt alle möglichen Methodenaufrufe in kodierter Form hinterlegen, die Kodierung geschieht in Form eines int.

Grundsätzlich würde man jetzt die Kodierung in Form eines case statements auflösen, so weit ist das kein Problem.

Das Problem liegt nun darin, dass ich gerne durch den Benutzer konfigurierbar festlegen möchte, welche Methoden überhaupt zur Ausführung kommen. Das heisst, dass ich auf Grund einer Konfigurations Datein ein Array

String[] commands;

hinterlegen kann, wo dann unter commands[i] der Name der kodierten Methode abgelegt ist.

Prinzipiell könnte ich nun das case Statement auf diesen String abfragen, aber dieser Durchlauf ist sehr Performance kritisch, d.h. ich befürchte, dass diese Art der Realisierung zu viel Zeit benötigt.

Frage:
Gibt es alternative Möglichkeiten, den Namen der aufzurufenden Methode zu bestimmen, sei es einen schnelleren Zugriff oder die Möglichkeit, Java mitzuteilen, dass der String den namen der aufzurufenden Methode enthält?

Danke
Thomas

Ich weiß nicht ob ich den Kern deiner Frage richtig verstanden habe, aber wenn du ein Array mit allen aufzurufenden Funktionsnamen besitzt kannst du das doch einfach per Reflection lösen:

Class cls = Class.forName("classname");
Constructor constr = cls.getConstructor(new Class[]{});
Object retobj = ct.newInstance(null);
for (String com : commands) {
 Method meth = cls.getMethod(com, new Class[]{});
 meth.invoke(methobj, null);
}

Ist ungetestet, aber müsste im prinzip so funktionieren.

Vielen Dank. Ich bin noch nicht sehr erfahren in Java und kannte das Konzept der Reflection bisher nicht. Das scheint mir tatsächlich ein Weg zu sein, das zu realisieren, was ich im Sinn habe.

Gruß
Thomas