-
Interfaces: Descreve um conjunto de métodos que
podem ser chamados em um objeto, mas não fornece implementações concretas para
todos os métodos. Pode-se declarar classes que implementam( isto é fornecem
implementações concretas para os métodos de )
uma ou mais interfaces. Cada método de interface deve ser declarado em
todas as classes implementam explicitamente a interface. As interfaces são
particularmente úteis para atribuir funcionalidades comuns a classes
possivelmente não relacionadas. Isso permite que objetos de classes não
relacionadas sejam processados polimorficamente.
·
É
um dos conceitos mais importantes da orientação a objetos. Interfaces podem
reduzir o acoplamento entre as classes e tornar o código mais reutilizável.
·
Não
podem ter campos de instância, mas permitem a especificação de constantes.
-
-> A classe que implementar uma interface deverá implementar todos os métodos existentes na interface.
-> Os atributos de uma interface são implicitamente public, static e final, ou seja, são constantes.
-> As interfaces não possuem construtores.
-
Lembrando que, a partir do java 8 as interfaces podem incluir a implementação de métodos (os chamados default methods).
Exemplo de uma declaração válida de uma interface no java 8
public interface Moveable{
public abstract void move();
public default void moveFaster(){
System.out.println("Moving faster....");
}
}
Fonte: https://docs.oracle.com/javase/tutorial/java/IandI/defaultmethods.html
-
Em Java 8 pode-se utilizar default methods nas interfaces
-
Isso depende da versão do Java.
-
O Java 8 está aí desde março 2014. Teria que ver de quanto é o edital pra ver se Carlos Chagas fez besteira.