I am learning C# and I recently come to know that we cannot instantiate the abstract class which is fine. But the main question is, if it cannot be instantiated, then why does it allow to create a constructor?