Pregunta de entrevista de Motorola Solutions

What is the difference between an abstract class and an interface in Java?