Es posible usar la reflexión, aunque probablemente debería cuestionar un poco su diseño si necesita ese tipo de comportamiento. Class.getMethod
toma un String
para el nombre del método y devuelve un objeto Method
, que luego se puede llamar .invoke
de llamar al método
Estas páginas Javadoc debería ser útil:
Código de muestra (suponiendo que los métodos yyyyyy
toman un argumento int
, solo para mostrar el argumento pa ssing):
yyyyyy obj = new yyyyyy();
String[] methodNames = {"foo", "bar", "baz"};
for(String methodName : methodNames) {
Method method = Class.forName("yyyyyy").getMethod(methodName, new Class[] {int.class});
method.invoke(obj, 4); // 4 is the argument to pass to the method
}
puedes contar? No es tan claro de entender. –
Creo que el término que está buscando es "reflexión". – Stephen
y también estoy seguro de lo que quiso decir es este: http://stackoverflow.com/questions/160970/how-do-i-invoke-a-java-method-when-given-the-method-name -as-a-string – gumuruh