Se você está se preparando para uma entrevista de desenvolvedor Java, é essencial revisar os principais conceitos da linguagem e do ecossistema Spring. Abaixo, reunimos 25 perguntas frequentes com respostas rápidas, técnicas e objetivas para te ajudar a ir direto ao ponto e aumentar suas chances de sucesso.
⚙️ Java: Conceitos Fundamentais
- O que é o JDK, JRE e JVM?
JDK é o kit de desenvolvimento Java, que inclui compilador e ferramentas. JRE é o ambiente de execução com bibliotecas padrão e JVM. JVM executa bytecode Java em tempo de execução. - O que é o conceito de Garbage Collection?
Mecanismo automático da JVM que libera memória de objetos não mais utilizados. - Qual a diferença entre equals() e ==?
equals()
compara o conteúdo dos objetos;==
compara referências na memória. - O que é encapsulamento?
Princípio da OOP que protege os dados internos de uma classe, acessando-os apenas via getters/setters. - Como funciona o polimorfismo?
Permite que um método tenha diferentes comportamentos com base no objeto que o invoca.
🌱 Spring Framework: Fundamentos
- O que é o Spring Framework?
Framework para desenvolvimento Java que facilita a criação de aplicações robustas com injeção de dependência, AOP, MVC, entre outros. - O que é Injeção de Dependência no Spring?
Mecanismo pelo qual o Spring gerencia e injeta objetos automaticamente. - Qual a diferença entre @Component, @Service e @Repository?
Todos registram beans, mas com semânticas específicas:@Service
para lógica de negócio,@Repository
para persistência,@Component
é genérico. - O que é o Spring Boot?
Abstração sobre o Spring que facilita o setup de aplicações com inicialização rápida e mínima configuração. - Como funciona o application.properties ou application.yml?
Arquivos usados para configurar propriedades como portas, perfis, conexões, etc.
🧪 Testes, Segurança e Performance
- Como realizar testes unitários com Spring?
Utilizando@SpringBootTest
,@MockBean
, JUnit e Mockito. - O que é o Spring Security?
Módulo que oferece autenticação e autorização com suporte a filtros, JWT, OAuth2 e mais. - Como implementar autenticação JWT?
Gerando tokens no login e validando com filtros nas requisições. - Como melhorar a performance no Spring?
Usando@Cacheable
, chamadas assíncronas com@Async
e ajustando pools de conexão. - O que é o actuator?
Módulo do Spring Boot que expõe métricas, health checks e monitoramento via endpoints.
🧩 Padrões e Arquitetura
- O que é o padrão MVC no Spring?
Modelo de separação entre Model, View e Controller. - O que são Beans no Spring?
Objetos gerenciados pelo Spring Container. - Como funciona o ciclo de vida de um Bean?
Criação → Injeção → Inicialização → Uso → Destruição (em escopos singleton). - Qual a diferença entre Singleton e Prototype?
Singleton mantém uma instância por aplicação. Prototype cria nova instância a cada uso. - Como aplicar Clean Architecture no Spring?
Separando domínios, casos de uso, interfaces e infraestrutura em camadas independentes.
💡 Extras e Boas Práticas
- Como lidar com exceções no Spring?
Usando@ControllerAdvice
e@ExceptionHandler
para centralização do tratamento. - O que é o Spring Data JPA?
Abstração para repositórios com acesso a banco de dados sem boilerplate de SQL. - Como versionar uma API no Spring?
Por path (/v1/
), header ou parâmetros, com rotas e controllers diferentes. - Como usar o DevTools?
Ferramenta para reinicialização automática e hot reload no ambiente local. - O que são Profiles no Spring?
Permitem definir configurações específicas para ambientes (dev, test, prod).
🔗 Conclusão e Recursos Relacionados
Estar bem preparado para entrevistas técnicas exige mais do que apenas decorar respostas. É importante entender os conceitos, saber aplicar e estar pronto para demonstrar isso na prática. Use essas perguntas como base para aprofundar seus estudos.