Да, можно, используя отражение. Однако обратите внимание также на Эффективное 2-е издание Java, пункт 53: Предпочитайте интерфейсы отражению . По возможности используйте вместо этого интерфейсы. Отражение редко действительно необходимо в общем коде приложения.
С помощью API отражения . Примерно так:
Method method = getClass().getDeclaredMethod(functionName);
method.invoke(this);
Легко сделать с помощью отражения. Некоторые примеры здесь и здесь.
Основные биты кода:
String aMethod = "myMethod";
Object iClass = thisClass.newInstance();
// get the method
Method thisMethod = thisClass.getDeclaredMethod(aMethod, params);
// call the method
thisMethod.invoke(iClass, paramsObj);