Como chamar um método Java pelo nome em string (reflexão)?
Olá a todos! Sou novo em Java e me deparei com a seguinte tarefa: tenho uma string contendo o nome de um método e preciso chamar esse método em um objeto. Por exemplo, tenho uma classe Calculator com os métodos add, subtract, multiply. O usuário digita no console o nome da operação (string "add", "subtract", etc.), e eu devo executar o método correspondente. Não quero escrever um longo switch-case ou if-else para dezenas de métodos — isso é feio e inflexível.
Como fazer isso? Ouvi dizer que existe algo chamado "reflexão" (reflection), mas não entendo como aplicá-la. Meu código atual é assim:
```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"; // suponha que obtivemos da entrada
// Como chamar calc.add(...
No answers yet.
Faça login para deixar uma resposta
Blogs
Refatoração de código legado em PHP: técnicas e estratégias avançadas
Monorepositório com Kotlin: organização de código na prática
Algoritmos e Estruturas de Dados em Rust: Guia Prático
Rate Limiting e Throttling em Rust: Dominando os Fluxos de Dados