Abstract classes are similar to interfaces. You cannot instantiate them, and they may contain a mix of
methods declared with or without an implementation. However, with
abstract classes, you
can declare fields that are not static and final, and define public,
protected, and
private concrete
methods.
read more >>