Это примерно access specifier для классов, реализующих вложенный интерфейс. Более подробная информация приведена ниже:
interface Fun{
interface NestedFun{
void nestedFunction();
}
void function();
}
class A implements Fun{
class B implements Fun.NestedFun{
//implements functionality
}
// implements functionality
}
Каким будет спецификатор доступа для class B, поскольку мы знаем, что по умолчанию вложенными интерфейсами являются static. Заставит ли это класс реализовать такие interfacestatic?
Точно такая же ситуация с Map.Entry и AbstractMap.SimpleEntry
@AndyTurner спасибо, внес изменения




Нет.
Все static означает в контексте класса, что это вложенный класс без неявной ссылки на экземпляр внешнего класса, который его создал.
Независимо от того, существует ли ссылка в классе, зависит от реализации; интерфейсы не связаны с реализацией.
поэтому я не могу создать экземпляр B как new A.B() в этом случае.
@AbhirojPanwar Нет, ты не можешь.
Вы можете создать экземпляр либо как new A().new B() (или someA.new B()), либо с помощью new A.B(), если вы сделаете B явно статическим.
Нет. И
staticтоже не модификатор доступа.