Sobes.tech
Junior — Middle
63

Можно ли объявить интерфейс с уровнем доступа, отличным от публичного?

Answer from AI

sobes.tech AI

В Java интерфейсы по умолчанию имеют уровень доступа public или пакетный (default), если явно не указан модификатор.

  • Если интерфейс объявлен вне класса (на уровне пакета), то он может быть либо public, либо иметь пакетный доступ (без модификатора). Другие уровни доступа, такие как private или protected, недопустимы для top-level интерфейсов.

  • Внутри класса (вложенный интерфейс) можно объявить интерфейс с любым уровнем доступа, включая private и protected.

Пример:

// Пакетный доступ
interface MyInterface {}

// Публичный интерфейс
public interface MyPublicInterface {}

class Outer {
    private interface InnerInterface {}
}