distinguish between nested classes and top-level in java code example
Example: use of nested class in java
In Java, it is possible to define a class within another class, such
classes are known as nested classes. They enable you to logically group
classes that are only used in one place, thus this increases the use of
encapsulation, and creates more readable and maintainable code.