The "init" section, and '?'.
In the code example below, the object variable "
_name" was declared with
? on the RHS. Using '?' on the
RHS of a declaration means you're not sure what the value will be (right now), and will postpone setting it until
the
init section of the constructor(s).
The
init section, is a special area of the constructor, where you make sure ALL object variables have been initialized. This special
section is the first thing in the body of constructor, and contains ZERO logic, only assignments.