Bom dia a todos.
É exatamente o que o nosso amigo Tchello disse. Interfaces são como se fosse classes Abstratas puras, ou seja, todos os seus métodos tem que ser abstratos, e tem a finalidade de estabelecer um contrato, obrigando a implementar todos os seus métodos nas classes que implementa.
Porém eu disse que Interface é como se fosse classes abstratas, mas não são classes, toda classe em Java tem uma hierarquia de herança definida e todas as classes herdam da classe mãe “Object”. Já Interface não tem hierarquia de herança, ou melhor, não há herança definida em Interfaces e é por isso que voce pode implementar mais de uma Interface em uma classe. Já com as classes, voce não pode fazer herança múltipla.
Quanto as funcionalidades da Interface, isto já foi dito acima, por mim e pelo nosso amigo Tchello, porém é sempre recomendável utilizar a Interface para a sua finalidade principal de que é padronizar comportamentos, ou seja, criar os métodos padrões que não só servirá para uma classe específica, mas sim para várias classes. Digo isto, porque tem muita gente que cria Interface para criar procedimento padrão apenas para uma classe, não que isto não seja viável, porém não é recomendável, pois seria disperdício de recurso, ou seja, criar uma Interface para padronizar métodos em uma classe somente, é mais fácil criar os métodos direto na prórpia classe.