public class Parent { public enum ChildType { FIRST_CHILD(\"I am the first.\"), SECOND_CHILD(\"I am the second.\"); private String myChild
A top level class is like a village, everybody knows everybody, there are no secrets. Nested units within it don't change that fact.
class A private a; class B private b a = x; // ok new B().b = y; // ok class C extends A{} new C().a = z; // ok