Работа точки входа в java

205
30 октября 2018, 04:30

Доброго времени суток коллеги!

Напомню в java точка входа выглядит так:

 public static void main(String[] args) {...}

Насколько я понимаю, JRE должна всунуть какой-то массив строк, и вопрос первый - какой и почему? Вот юзер щелкнул дважды. Откуда там массив строк сгенерился? В IntellijIdea я набрал

public static void main(String[] args) {       
        System.out.println(args.length);
    }

И ... мне вывело 0. Второй вопрос - почему нуль? Неужели IntellijIdea даёт массив нулевой длины на вход при запуске?

Answer 1

Можно также задать аргументы в IntellIJ IDEA, зайди в настройки запуска приложения Edit Configuration строка с названием Program arguments.

Answer 2

Если вы будете запускать приложение с командной строки к примеру

java YourClass foo bar

то в метод main придут ваши параметры foo bar

Answer 3

String[] args это аргументы вашей программы, если запустите java {YourClass} foo bar baz то в массиве args будет foo,bar,baz

READ ALSO
Java и совместимость

Java и совместимость

Мне очень нравится нововведение в java 10 - varИ если я правильно понимаю, то вся "магия" происходит именно на этапе компиляции

169
java Iterator для многомерного массива

java Iterator для многомерного массива

Как реализовать интерфейс Iterator для многомерного массива?

188
Не хочет работать hibernate под Tomcat

Не хочет работать hibernate под Tomcat

Когда выполнение кода метода doGet сервлета доходит до момента обращения к базе через hibernate в логе появляется нижеуказанная ошибка и останавливается...

186