Nested Class can be used whenever you want to create more than once instance of the class or whenever you want to make that type more available . Nested Class increases the encapsulations as well as it will lead to more readable and maintainable code.
Read more