nested class

In Java, a class defined within an enclosing class definition. A static nested class has no direct access to the members of its enclosing class whereas a non-static nested class, known as an "inner class", is associated with an instance of the enclosing class and an instance of the inner class has direct access to the members of its enclosing instance.

Java Tutorial.

[Other languages?]