A member class is a class whose declaration is directly enclosed in another class or interface declaration.
A member interface is an interface whose declaration is directly enclosed in another class or interface declaration.
The accessibility of a member type in a class declaration is specified in §6.6.
It is a compile-time error if a member type declaration has more than one of the access modifiers
Member type declarations may have annotation modifiers (§9.7) like any other type or member declaration.
If a class declares a member type with a certain name, then the declaration of that type is said to hide any and ...