Как правило, это невозможно с интерфейсами в Java.
Если вы хотите, чтобы поле было общедоступным, вам все равно следует предоставить методы получения и установки для него.Вы можете объявить эти методы в интерфейсе, что, конечно же, приведет к ошибке компилятора, если реализующий класс не объявит их.
Если вы хотите, чтобы у классов было только закрытое поле, которое вы бы использовали прив какой-то точке доступа по рефлексии вы должны подумать, есть ли другое решение, которое не нуждается в поле.Возможно, также можно использовать методы?
Последний вариант - использовать инструмент статического анализа, такой как FindBugs , который позволяет определять пользовательских шаблонов ошибок .Таким образом, вы должны написать правило, которое находит разработчиков вашего интерфейса без этого поля и включить его в вашей конфигурации FindBugs.Существует хороший плагин Eclipse для FindBugs, который отображает предупреждения FindBugs в вашем коде (как обычные предупреждения Eclipse).