This content has been marked as final. Show 4 replies
An abstract class can contain code (the implementation of methods), while an interface can't.
Also, a class can implement multiple interfaces, but you cannot subclass multiple (abstract) classes.
Also an interface can extend multiple interfaces, but an abstract class can only extend one other class.
an interface contains only abstract methods, whereas an abstract class has tobe called abstract if one of its methods is abstract it can have other methods that are defined.
Another trait that is often overlooked is that the abstract methods and constants declared in an interface are always public; with abstract classes, you can declare them (package) and protected scope as well.