Почему поле "private static" не разрешено в интерфейсе Java 8?

Когда я пытаюсь скомпилировать следующий код

public interface SomeInterface{
    private static Logger logger = Logger.getLogger();

    public default void someMethod(){
        logger.info("someMethod: default implementation");
    }
}

Я получаю ошибку

Illegal modifier for the interface field SomeInterface.logger; only public, static & final are permitted

Когда я удаляюprivate модификатор, код компилируется, но я не хочу, чтобы другие классы из пакета видели это поле.

Почему Java не позволяет мне делать такие вещи, когда это действительно имеет смысл?

Ответы на вопрос(4)

Ваш ответ на вопрос