Я предполагаю, что вы имеете в виду внутренние классы.
Я думаю, что мотивация будет исходить из того, как вы хотите связать свой внутренний класс. Если вы хотите, чтобы ваш внутренний класс был связан с конкретным экземпляром его внешнего класса, вы должны использовать private class
, в противном случае используйте private static class
.