Also kurz, knapp und einfach gesagt ist eine abstrakte Klasse eine Klasse, von der keine Objekte erstellt werden können. Von ihr kann allerdings geerbt werden, was sie zu einer Art Strukturvorgabe macht.
Interfaceklassen sind wiederum was anderes. Sie sind abermals eine Art Strukturvorgabe allerdings gibt eine Interfaceklasse nur die Methoden an, die in den jeweiligen Subklassen enthalten sein müssen. :D
LG