InterfaceIt is used to achieve total abstraction. Since java does not support multiple inheritance in case of class, but by using interface it can achieve multiple inheritance . It is also used to achieve loose coupling. Interfaces are used to implement abstraction.Abstract The purpose of an abstract class is to define some common behavior that can be inherited by multiple subclasses, without implementing the entire class.An abstract class allows you to create functionality that subclasses can implement or override. An interface only allows you to define functionality, not implement it. And whereas a class can extend only one abstract class, it can take advantage of multiple interfaces
Basically interface and abstract class both used for abstration.
abstract class