Skip to content

Latest commit

 

History

History
33 lines (29 loc) · 1.29 KB

README.md

File metadata and controls

33 lines (29 loc) · 1.29 KB

Java Reflection (Meta-programação)

O que é Java Reflection?

É uma linguagem e uma feature da JVM que prove para nós uma forma de acessar informações sobre nossa aplicação (classes e objetos) em tempo de execução (runtime). https://codegym.cc/pt/groups/posts/pt.45.api-de-reflexao-reflexao-o-lado-obscuro-de-java

O que podemos fazer com o Java Reflections?

  • Escrever códigos mais flexíveis que:
    • Conectam diferentes componentes em tempo de execução;
    • Criar fluxos sem nenhuma modificação no código-fonte.
  • Escrever algoritmos que dinamicamente se adaptam e mudam seu comportamento baseado nos tipos de objetos e classes que estão trabalhando;
  • Mais flexibilidade para analisar objetos e classes de uma aplicação em tempo de execução;
  • Podemos criar estruturas poderosas como:
    • Frameworks;
    • Bibliotecas;
    • Designs de software.

Quais tecnologias utilizam Java Reflections?

  • JUnit: framework para teste unitário em projetos Java;
  • JSON Serialization/Deserialization;
    • Jackson;
    • Gson.
  • Injeção de dependência (ID):
    • Spring Boot;
    • Google Guice.
  • Logging frameworks;
  • Ferramentas de ORM (Object-relational Mapping);
  • Web Frameworks (Ex: Spring Boot);
  • Ferramentas de desenvolvimento;
  • Entre outros…