A constructor can be directly invoked only by another constructor (using a call to super() or this()).
this() may appear only as the first statement in a constructor.
this() argument list determines which overloaded constructor is called.
Constructors can call constructors can call constructors, and so on.
Calls to this() and super() cannot be in the same constructor.