Methode aus Text aufrufen

Hallo

Gibt es die Möglichkeit einem Programm als Text zu übergeben welche Methode er aufrufen soll? d.h. ich gebe ein: call methode_xyz() und er macht das im Programm.

Andere Möglichkeit: kann ich eine Variable machen die auf eine andere Methode zeigt. D.h. wenn er standardmethode() aufruft dann führt er die Methode aus auf die gezeigt wird?

Grüße
Fabian

Hallo,

das Design Pattern dazu heißt Factory-Methode.

Mehr dazu findest Du z.B. auf bruce eckel’s page (schu in google, wo die liegt) oder in dem Standardwerk von Gamma, Helm, Johnson und Vlissides: Design Patterns bzw. auf Deutsch: Entwurfsmuster

Gruß

Peter

Danke [owT]
.

Also entweder Du machst das ganz simpel über switch-case-Anweisungen (bei größerer Anzahl an Methoden etwas mühselig, umständlich erweiterbar) oder Du erledigst das Ganze über Reflections (find ich persönlich eleganter).

Greetz, Chris

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Aha, was sind Reflections?

Grüße
Fabian

Aha, was sind Reflections?

Grüße
Fabian

Durch Reflektion kann man während der Laufzeit des Programms Objekte auslesen und verändern. So kann man z.B. auch die private-Variablen ändern, ohne dass entsprechende getter- oder setter-Methoden vorhanden sind. Oder, wie in Deinem Fall, kann man die Methoden, die das Objekt hat, während der Laufzeit aufrufen (du müsstest halt nur den Namen der Methode am Objekt wissen).