Boa noite pessoal,

Atualmente estou estudando Java, e em uma das aulas foi apresentado as classes abstratas e interfaces. Entendi o conceito e já fiz alguns testes também com ambas. A diferença que percebi foi a declaração de variáveis nas classes abstratas (que não é possível nas interfaces), e a possibilidade de implementar mais de uma interface em uma classe (o que não é possivel em subclasses).
Então fique pensando se não seria melhor trabalhar apenas com a classe mãe e definir os métodos abstratos, e interfaces só seriam interessantes quando fossem necessário implementar mais de uma?
A dúvida que eu tenho é a seguinte, em quais casos seria melhor implementar classes abstratas do que interfaces e vice-versa? Se puderem compartilhar alguma experiência de vocês que foi melhor usar um do que o outro, serei grato! 
