Cognizant interview question

They asked me to explain the difference between an abstract class and an interface in Java.