Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
3
respostas

Comparator interface funcional?

Fiquei com dúvida sobre essa interface. Na documentação ela é citada como sendo funcional porém ao selecionar "abstract methods" na seção "Method Summary" dois métodos são filtrados entre todos. Porquê o equals() aparece por ali? Para ser funcional o requisito não é de no máximo um método abstrato?

https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html

Obrigado!

3 respostas
solução!

Conceitualmente, uma interface funcional possui exatamente um método abstrato. Porém, se uma interface declarar um método abstrato substituindo um dos métodos públicos de java.lang.Object, isso também não conta para a contagem do método abstrato da interface, já que qualquer implementação da interface terá uma implementação de java.lang.Object ou de outro lugar.

Ou seja, se for um método de Object (como é o caso do equals) ele não conta :)

Abraço!

Obrigado Otávio!

Por nada amigo, bons estudos!