Sobes.tech
Junior — Middle

Qual é a vantagem de usar classes anónimas na programação moderna e por que elas não desapareceram desde que surgiram?

sobes.tech IA

Resposta da IA

As classes anónimas em Java permitem criar implementações únicas de interfaces ou subclasses sem a necessidade de declarar explicitamente uma nova classe com um nome. As suas vantagens:

  • Conveniência e concisão: permitem definir rapidamente o comportamento no local de uso, o que reduz a quantidade de código e melhora a legibilidade, especialmente para manipuladores de eventos simples ou callbacks.

  • Localidade: o código da classe anónima está próximo do local de uso, facilitando a compreensão da lógica.

  • Encapsulamento: oculta detalhes de implementação sem poluir o espaço de nomes.

Por que elas não desapareceram:

  • Apesar do aparecimento de expressões lambda (a partir do Java 8), que em muitos casos são mais concisas, as classes anónimas continuam necessárias quando:
    • Criar uma classe com vários métodos ou estado.
    • Herdar de uma classe (em vez de implementar uma interface).
    • Utilizar lógica mais complexa que as lambdas não podem expressar.

Exemplo de classe anónima:

button.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(ActionEvent e) {
        System.out.println("Botão pressionado");
    }
});

Assim, as classes anónimas continuam a ser uma ferramenta útil para criar implementações locais rápidas, complementando as capacidades da linguagem.