2015-06-16 3 views
0

Я понимаю, почему используется public static void main, я также знаю, что String [] args создает одномерный массив, называемый args, который содержит строки. Но почему мы должны иметь это в скобках?Почему мы обычно запускаем программы с помощью public static void main ('String [] args')?

+0

На этот вопрос лучше ответить новичка Java-книги, где они могут охватить этот вопрос более подробно. – FreshWaterTaffy

+0

http://stackoverflow.com/questions/890966/what-is-string-args-parameter-in-main-method-java – AzNjoE

ответ

2

String[] args должен предоставить все аргументы, которые могут быть доставлены вашей программе из командной строки. Скажем, например, вы хотели, чтобы путь к файлу был основным, вы можете ввести его в командной строке и передать это как первый элемент массива. Это позволяет вам ничего не пропускать, или многие вещи при запуске вашего main.

0

Язык Java был указан, что метод main должен принимать только один параметр типа String[]. Его можно назвать любым действительным идентификатором, который вы хотите; это только соглашение, что оно называется args. Это может быть даже String.... Вот спецификация, от JLS, Section 12.1.4:

Метод main должен быть объявлен public, static и void. Он должен указать формальный параметр (§8.4.1), объявленным типом которого является массив String. Таким образом, одним из следующих деклараций приемлемо:

public static void main(String[] args) 

public static void main(String... args) 

Это может быть даже

public static void main(String[] zzyzx) 

но параметр должен быть там.

+2

Он спрашивает о скобках не параметр. – dvallejo

+0

@dvallejo «Это» в «Но почему мы должны иметь это в скобках?» относится к «1-D массиву, называемому args, который содержит строки», самое последнее, о чем говорится в вопросе, если OP не хочет прояснять, путем редактирования вопроса, чтобы быть более ясным. – rgettman