Why there is abstract class in Java?

Abstract classes provide a simple and easy way to version our components . … If we want to provide common, implemented functionality among all implementations of our component, use an abstract class. Abstract classes allow us to partially implement our class, whereas interfaces contain no implementation for any members.

Read more