Первые два ответа от поиска вашего вопроса в значительной степени говорят обо всем
java.sun.com / документы / книги / учебник / Java / javaOO / accesscontrol.html
www.java-samples.com / showtutorial.php? Tutorialid = 655
Теперь моя точка зрения: я думаю, что стоит добавить, что хорошей практикой является начинать с private по умолчанию и переходить в защищенный, если класс расширен; и public, когда вы хотите предоставить доступ к классам из разных пакетов.
Однако ничто не мешает вам публично заявить всем членам. Это делает совсем наоборот и увеличивает вашу гибкость; с оговоркой, что вы жертвуете безопасностью. Например, если сторонняя организация загружает свои собственные классы вместе с вашими в один и тот же путь к классу, и все члены вашего класса являются общедоступными, они могут легко изменять состояние ваших классов. Многочисленные другие примеры.
Итак, если вы абсолютно не обеспокоены безопасностью, наращивайте модификаторы по мере необходимости.