Can be particularly useful when ...
- There is no reason for an object of the local class to exist in the absence
of an object of the enclosing class
- There is no reason for an object of the local class to exist outside
a method of the enclosing class
- Methods of the object of the local class need access to members of the
object of the enclosing class
- Methods of the object of the local class need access to final
local variables and method parameters belonging to the method in which
the local class is defined