Question: does abstract class have public constructor?
Answer: Yes, Abstract Classes can have constructors ! Abstract class can have a constructor though it cannot be instantiated. But the constructor defined in an abstract class can be used for instantiation of concrete class of this abstract class.