Problem Statement
Can an abstract class have a constructor and what is its purpose?
Explanation
Even though you cannot instantiate an abstract class directly, it can have a constructor which is called when a subclass is instantiated. This lets the abstract class initialize data common to all subclasses.