They can use local variables and parameters of the function, but only ones that are declared final, because the local class instance must maintain a separate
copy of the variable, as it may out-live the function. So as
not to have the confusion of two modifiable variables with
the same name in the same scope, the variable is forced to
be non-modifiable.