Shadowing
Shadowing A scope rule specifying that a local
identifier declaration blocks access to an identifier
declared with the same name outside the block
containing the local declaration
A shadowed class member can be accessed by using
keyword this together with the class member