Cisco interview question

In Java, what is the difference between an abstract class and an interface?