What is the Difference Between Abstract Class and Interface in Java ?

Differences between Abstract class and Interface are..

1. An abstract class can have implemented methods with body (non-abstract methods). Interface has only abstract methods. From Java 8 onwards, interface can have static/default methods in implemented form.

2. An abstract class can have instance member variables. An interface cannot have instance variables. It can only have constants.

3. An abstract class can have a constructor. Interface cannot have constructor. It has to be implemented by another class.

4. A class can extend only one abstract class. A class can implement more than one interface.



You May Interest

What are the Differences Between a Checked and Unchecked Exceptio ...

How Can We Print an Array in Java ?

How Will You Implement Error Page in JSP ?

Can We Use Thread.sleep Method For Real-time Processing in Java ?

What are the Disadvantages of Multithreading in Java ?