[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-java-core-chto-vy-znaete-o-funktsii-main":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":19,"progress":20,"seo":21},17,"chto-vy-znaete-o-funktsii-main",2,"java-core","Java Core","☕","Что вы знаете о функции `main()`?","**Метод `main()`** — точка входа в Java-программу. JVM ищет именно этот метод при запуске приложения.\n\n### Классическая сигнатура\n\n```java\npublic static void main(String[] args) {}\n```\n\nПараметр `args` может быть также объявлен как *varargs*:\n\n```java\npublic static void main(String... args) {}\n```\n\nВ приложении может быть несколько классов с методом `main()`. Если метод отсутствует в указанном при запуске классе, будет получена ошибка `Error: Main method not found`.\n\n### Упрощённый запуск (Java 21+)\n\nНачиная с Java 21 (JEP 445, *preview*; JEP 463 в Java 22; стандартизировано в Java 25), доступны **безымянные классы** (*unnamed classes*) и **методы экземпляра `main()`**. Это позволяет писать минимальные программы без `public`, `static` и `String[] args`:\n\n```java\n\u002F\u002F файл HelloWorld.java — весь файл является безымянным классом\nvoid main() {\n    System.out.println(\"Hello, World!\");\n}\n```\n\nJVM при запуске ищет метод `main()` в следующем приоритете: `static void main(String[])` > `static void main()` > `void main(String[])` > `void main()`.","","junior",[15,16,17,18],"core","основы","точка-входа","main",[],null,{"title":22,"description":23,"ogTitle":24,"ogDescription":25,"keywords":26,"schemaAnswer":31,"featuredSnippetReady":32},"Метод main() в Java — точка входа в программу — Gymterview","Метод main() — точка входа в Java-программу. Сигнатура public static void main(String[] args). С Java 21 — instance main и unnamed classes.","main() в Java — всё что нужно знать","public static void main(String[] args) — точка входа. С Java 21 можно использовать instance main() без static и unnamed classes.",[27,28,29,30],"main Java","точка входа Java","public static void main","метод main","Метод main() — точка входа в Java-программу. Классическая сигнатура: public static void main(String[] args). В приложении может быть несколько таких методов. Начиная с Java 21 поддерживаются instance main() методы и unnamed classes.",true]