Se uma classe implementar uma interface, mas o programador não escreveu a implementação de todos os métodos da interface será gerado um erro de compilação, a menos que a classe seja abstrata (assunto que veremos a seguir).

A partir da versão Java 8 é possível incluir nas interfaces um método concreto, ou seja, com a implementação padrão do método. Essa característica é muito útil e evita a implementação desnecessária. Para definir um método padrão usamos a palavra default antes do nome do método.

Alertamos apenas para o fato que as versões antigas de java não são compatíveis com a declaração default o que pode gerar erros e incompatibilidades.

Sugerimos que sempre que possível sejam usadas interfaces em lugar de herança, pois tornamos o código mais flexível.

Um exemplo interessante disso é o método Collections.sort(). Esse método permite ordenar qualquer lista de objetos desde que implementem a interface Comparable.

Copyright © 2014 AIEC.