Sobes.tech
Junior — Middle

Explique o princípio de funcionamento do mecanismo de reflexão em Java e suas principais aplicações

sobes.tech IA

Resposta da IA

A reflexão em Java é um mecanismo que permite a um programa obter informações sobre classes, métodos, campos e construtores em tempo de execução, bem como invocar métodos e alterar valores de campos de forma dinâmica.

Principais aplicações da reflexão:

  • Frameworks e bibliotecas (por exemplo, Spring) usam reflexão para injeção de dependências, criação de objetos e chamada de métodos sem conhecimento explícito das classes durante a compilação.
  • Serialização e desserialização de objetos.
  • Testes (por exemplo, JUnit) para invocar métodos de teste.
  • Ferramentas de análise de código e depuração.

Exemplo de uso de reflexão para chamar um método:

Class<?> clazz = Class.forName("com.example.MyClass");
Object obj = clazz.getDeclaredConstructor().newInstance();
Method method = clazz.getMethod("myMethod", String.class);
method.invoke(obj, "olá");

A reflexão é poderosa, mas seu uso pode afetar o desempenho e a segurança, portanto deve ser usada com consciência.