От Java в Oracle tutorials Я нашел этот текст:Может ли статический вложенный класс быть создан в Java?
Как с методами класса и переменными, статический вложенный класс связан с его внешним классом. И как статические методы класса, статический вложенный класс не может ссылаться непосредственно на переменные экземпляра или методы, определенные в его охватывающем классе, - он может использовать их только через ссылку на объект.
Примечание: Статический вложенный класс взаимодействует с членами экземпляра его внешнего класса (и других классов), как и любой другой класс верхнего уровня. По сути, статический вложенный класс поведенчески является классом верхнего уровня, который был вложен в другой класс верхнего уровня для удобства упаковки.
Статические вложенные классы обращаются, используя имя класса вшита:
OuterClass.StaticNestedClass
Например, чтобы создать объект для статического вложенного класса, используйте следующий синтаксис:
OuterClass.StaticNestedClass nestedObject = новый OuterClass.StaticNestedClass();
Я думал, что невозможно создать статический класс, поэтому я действительно не понимаю предложение, выделенное жирным шрифтом.
Вы не знаете, что это значит?
Да, это возможно. Возможно, вы думаете о нестационарном внутреннем классе, и в этом случае вы можете создать его только через уже созданный экземпляр внешнего класса.Кроме того, если вы знакомы с C#, вы не можете создавать статический класс на этом языке. Этот оператор очищает его: «По сути, статический вложенный класс поведенчески является классом верхнего уровня, который был вложен в другой класс верхнего уровня для удобства упаковки». – sgbj