A class inherits only one abstract class. An interface is abstract so that it can't provide any code. An abstract class can give complete, default code which should be overridden. You cannot use access modifiers for the method, properties, etc.
Are all abstract classes interfaces?
Abstract classes are similar to interfaces. You cannot instantiate them, and they may contain a mix of methods declared with or without an implementation. However, with abstract classes, you can declare fields that are not static and final, and define public, protected, and private concrete methods.
Are interfaces abstract?
Interface is absolutely abstract and cannot be instantiated; A Java abstract class also cannot be instantiated, but can be invoked if a main() exists.