Hola, bueno te doy una explicacion de ir por casa, pero creo que a lo meojr te aclara algo.
A lo bruto el interfaz sirve para crear algo parecido a herencia multiple en java (alguien me va a pegar, seguro).
Seria una lista de acciones que puede llevar a cabo un determinado objeto (vale eso son metodos), pero no, realmente los interfaces solo llevan el prototipo y no el codigo como los metodos.
Por ejemplo:
Creamos una interfaz con los siguientes metodos:
Acelerar, Frenar, GirarDerecha, GirarIzquierda, Parar.
A simple vista esto parecen los metodos de la clase coche, pero mas alla nos fijamos que estos metodos estan en todos los tipos de vehiculos de ruedas. El interfaz sera el que nos de los metodos para las distintas clases que declaremos, bici, coche, camion, ...., pero cada clase dira (implementara) como lo hara el objeto especifico.
Los inteface son declarados para definir un comportamiento que ser? implementado por otras clases que podran ser distintas pero se comportaran igual de cara al interfaz. Todas tendran funciones implementadas por el interfaz
En definitiva, es parecido a cuando declaras una clase abstracta para que hereden otras clases diferentes.
Espero haberte aclarado algo. Adios