A. Introduction
In 13.2, we only used default constructors to create objects for both superclasses and subclasses. The logic is simple: the default subclass constructor will invoke the default superclass constructor to create the superclass object first, then add the subclass variables and methods.
What if the default constructors are not available? - As we know, if a class has user-defined constructors, the default constructor will "disappear".
B. Parent-child relationship rules #2: a subclass constructor always has to call a superclass constructor.
If the default superclass constructor is available, and the subclass constructor does not call a superclass constructor explicitly, the default superclass constructor is called.
If the default superclass constructor is not available, the subclass constructor has to call a superclass constructor explicitly on the FIRST line.
C. Try this:
Create two constructors for each Employee, HourlyEmployee, SalariedEmployee and Manager class. Instantiate two objects for each class and print out the name of each employee.
Create two constructors for the Player class and three constructors for the NFLPlayer class. Use each of NFLPlayer constructors to create an object.
Part C: https://gist.github.com/0ffffff/0b0b924d3f4d8080ec1aeb4d93d851f6