There are three common reasons to define a default constructor:
- To construct an object with default values.
- To initialize an object that doesn't need parameters in that initialization process.
- To redefine the scope of the constructor. Making the constructor private will prevent anyone but the class itself from constructing an object.