При написании интерфейсов в Java возможна ситуация, когда в интерфейсе не определяются методы. Это может быть сделано по нескольким причинам.
Во-первых, это может быть сделано для обозначения особого типа интерфейса, такого как маркерный интерфейс. Маркерный интерфейс является интерфейсом без определенных методов, но который используется для обозначения специальных атрибутов класса.
Во-вторых, это может быть сделано для определения константных переменных. В этом случае интерфейс содержит только объявления констант.
Наконец, это может быть просто необходимо для создания иерархии наследования интерфейсов. В этом случае интерфейс выступает в качестве базового интерфейса для других интерфейсов и не определяет никаких методов.
Таким образом, в Java время от времени возможно создавать интерфейсы без определенных методов в зависимости от задачи, которую необходимо решить.
Github: https://github.com/DEBAGanov