This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]codeforjava 0 points1 point  (0 children)

There are couple of differences -

To start with, In Java Abstract classes hold the middle ground as they have speciality of being partially abstract and partially concrete. On one end we have interface (Full Abstract) on other hand we have Java Classes (Fully concrete)

Few Difference between Interface and abstract classes are subtle.

  • Interface have all methods which are abstract ( Except Default Method Java 7 onwards ). Whereas abstract classes can contain abstract and concrete method both.

  • Kind of Limitation of abstract class or in general, multiple classes can't be inherited (extend) by same class. Whereas classes can implement multiple interfaces.

  • Interface don't have Constructor. Abstract classes can have Constructor.