It is slightly misleading to refer to a static inner class as an inner class, since it has no special relationship with the enclosing class( it doesnt have a reference to the enclosing class). Hence, they are more aptly referred to as Nested Classes.
"You'll sometimes hear static nested classes referred to as static inner classes, but they really aren't inner classes at all, by the standard definition of an inner class."
From a scoping-perspective, static nested classes are innner, in the sense that they are defined inside the enclosing class. Hence they are called nested classes.
From a relationship-perspective, static nested classes are outer, as they can not access the instance members of the enclosing class. The complicated name "top-level nested class" attempts to convey the paradoxical nature of this class type.
Good job, Aum!!
SCJP 1.4 - 95%
Story like this gets better after being told a few times. Or maybe it's just a tiny ad: