¿Cómo llamar a un método Java por su nombre de cadena (reflexión)?
¡Hola a todos! Soy nuevo en Java y me encontré con esta tarea: tengo una cadena que contiene el nombre de un método y necesito llamar a ese método en un objeto. Por ejemplo, tengo una clase Calculator con los métodos add, subtract, multiply. El usuario ingresa desde la consola el nombre de la operación (cadena "add", "subtract", etc.), y debo ejecutar el método correspondiente. No quiero escribir un largo switch-case o if-else para una docena de métodos — es feo y poco flexible.
¿Cómo hacerlo? He oído que hay algo llamado "reflexión" (reflection), pero no entiendo cómo aplicarlo. Mi código actual se ve así:
```java
public class Calculator {
public int add(int a, int b) { return a + b; }
public int subtract(int a, int b) { return a - b; }
public int multiply(int a, int b) { return a * b; }
}
public class Main {
public static void main(String[] args) {
Calculator calc = new Calculator();
String methodName = "add"; // supongamos que lo obtuvimos de la entrada
// ¿Cómo llamar a calc.add(5, 3) usando