What is Interface?

An interface is a contract with the list of the method defined in the interface.An interface can only have the method definition.Any class implementing the interface should implement all the methods defined in the interface.

What is Abstract Class?

An abstract class is a special kind of class which can not be instantiated, the main purpose of  abstract class is to define the contract for all subclasses,

The difference between Interface and Abstract class?