Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Construtor para uma interface?

Durante a aula, o professor mostrou o seguinte codigo:

lista.sort(new Comparator<Conta>() {

            @Override
            public int compare(Conta c1, Conta c2) {

                return Integer.compare(c1.getNumero(), c2.getNumero());
            }

        });

No entanto, ele também disse, que nesta linha: new Comparator<Conta>() precisava ter o ( ) para criar o construtor e poder compilar.

Toda via, não entendi o porquê, sendo que até onde me lembro, interfaces não tem construtores.

1 resposta
solução

Oi Gabriel

Comparator é uma interface, mas quando faz

new Comparator<Conta>() {
});

estamos criando uma implementação para a interface

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software