La primera vez que di las interfaces y las clases abstractas me hice un pequeño lio,pues en un primer "vistazo" parecen iguales.
Para remediar este problema me hice un esquema:
Interface --> es simplemente una lista de métodos no implementados(el método definido sin código), además puede incluir la declaración de constantes.
Clase Abstractas --> puede incluir métodos implementados y no implementados o abstractos, miembros dato constantes y otros no constantes.
Ninguna de las dos se puede instanciar.
Una clase puede implementar varias interfaces pero solo una clase abstracta.
Ejemplo:
public class Prueba extends Abstracta implements Interface1,Interface2,Interface3{
}