What is the difference between abstract class and interfaces in Java?
Differences between an interface and an abstract class:
At the same time multiple interfaces can be implemented, but only extend one class
an abstract class may have some method implementation (non-abstract methods, constructors, instance initializers and instance variables) and non-public members
abstract classes may or may not be a little bit faster