Почему модификатор доступа по умолчанию в JUnit 5 является закрытым?
Это не "по умолчанию". Там технически нет по умолчанию. Скорее, в JUnit Jupiter у вас есть выбор: public
, protected
или пакетный.
Какая польза от изменения его на частный пакет?
Преимущество в том, что у вас больше нет типа public
. Если ваша IDE автоматически генерирует методы тестирования и классы тестирования для вас, которые public
, не стесняйтесь оставлять их public
.
Но ... если вы набираете методы самостоятельно, просто отключите public
, если вы не разрабатываете свои тестовые классы для создания подклассов из других пакетов, и в этом случае вы захотите сделать свой переопределяемые методы испытаний public
или protected
. И конечно, методы интерфейса default
должны быть public
.
Длинная история, короткая: мы (команда JUnit 5) верим в принцип «Чем меньше, тем лучше», то есть чем меньше нужно набирать текст для достижения своей цели, тем лучше!