an abbreviated notation for creating a simple local object "in-line" within any expression, simply by wrapping the desired code in a " new " expression
an extension to the local class concept described above
a subclass of an existing class ( Base in this example) or an implementation of an interface
a subspecies of local class, and therefore mutually exclusive with member types
a local class that is declared and instantiated in a single statement, often as a parameter to a method
local class that has no name.