Nested classes represent a particular type of relationship that is it can access all the members (data members and methods) of the outer class, including private. Nested classes are used to develop more readable and maintainable code because it logically group classes and interfaces in one place only.