Na verdade, uma Classe Abstrata sem qualquer implementação, tem o aspect parecido com uma Interface. Mas ambas possuem várias diferenças e similaridades entre si.
Classes Abstratas:
·As classes abstratas devem conter pelo menos um método abstrato, que não tem corpo.
·É um tipo especial de classe que não há como criar instâncias dela.
·É usada apenas para ser herdada, funciona como uma super classe.
·Uma grande vantagem é que força a hierarquia para todas as sub-classes.
·É um tipo de contrato que faz com que as sub-classes contemplem as mesmas hierarquias e/ou padrões.
Fonte:https://www.devmedia.com.br/interfaces-x-classes-abstratas/13337