Viendo que esta pregunta es tipica, y a mi no me parece muy sencilla, he hecho este pequeño resumen. Leerlo y opinad, y si hay que cambiarlo lo editamos, para llevar todos esto claro a la defensa.
La diferencia principal entre interface y herencia es que la herencia tiene una relacion mas estrecha con las clases derivadas que una interface. Una interface tan solo define los metodos que deben tener las clases que la implementan, no puede definir que cuerpo tendran ni variables (salvo static y final).Sin embargo, una herencia puede definir un cuerpo, variables y como seran los metodos de las clases que extiendan de ella.
Una interface puede ser implementada por clases muy diferentes, una herencia, sin embargo, y como norma general, tan solo sera extendida por clases similares y con relacion, relacion que precisamente les dara esa herencia. En el caso de una herencia habra una relacion jerarquica, pero en el caso de una interface, simplemente las clases que la implementen tendran alguna caracteristica similar.
creispin eres un hijo de putaa<aaaaaaaa