2015-03-26 4 views

ответ

0

public -> Спецификатор доступа. Любой другой класс может получить доступ к этому методу.

static -> Метод связан с классом, а не с экземпляром класса.

void -> Тип возврата. Метод ничего не возвращает.

main(String[] args) -> метод имя main(). Он принимает массив аргументов String. Аргументы String[] являются аргументами командной строки.

Примечание: Метод main(), определенный выше, является точкой входа программы, если вы меняете подпись, тогда ваша программа может не работать.

0
  • Public = Этот метод доступен для всех других классов.

  • static = Этот метод не требует экземпляра для запуска.

  • void = Этот метод ничего не возвращает.

  • main() = Основной метод (первый способ запуска).

  • String[] = массив строк.

  • args = Array name.

1

В соответствии с Java language specification выполнение программы Java начинается с метода main(). Основной метод() должен следовать определенному синтаксису, это можно объяснить:

public - Access спецификатора, показывает, что main() является доступным для всех других классов.

void - тип возврата, main() ничего не возвращает.

String args[] - аргументы метода main(), которому должен быть массив строки типа.

static - Модификатор доступа. Основной метод всегда должен быть статическим, потому что метод main() может быть вызван без создания экземпляра класса.

Предположим, что мы выполняем программу Java Helloworld.

При выполнении программы, мы используем команду

java Helloworld. 

Внутри эта команда превращается в

Helloworld.main() 

Делая main() статический метод, JVM вызывает метод main() без создания объекта первой ,

15

Вот немного подробное объяснение о том, почему основной метод объявлен как

Основной метод является точкой входа в программу Java для виртуальной машины Java (JVM). Скажем, у нас есть класс с именем Sample

class Sample { 
    static void fun() 
    { 
      System.out.println("Hello");  
    } 
} 

class Test { 
     public static void main(String[] args) 
     { 
       Sample.fun(); 
     } 
} 

Эта программа будет выполнена после компиляции, как java Test. Команда java запустит JVM, и она загрузит наш класс Test.java в память. Поскольку основной точкой входа в нашу программу, JVM будет искать основной метод, который объявляется как public, static и void.

Почему главный должен быть объявлен открытым?

main() должен быть объявлен public, потому что, как мы знаем, что это вызывается JVM всякий раз, когда начинается выполнение программы и JVM не входит в наш пакет программ.

Чтобы получить доступ к основной внешней стороне упаковки, мы должны объявить ее как public. Если мы объявим его как ничего, кроме public, он отобразит Run time Error, но не Compilation time error.

Почему main должен быть объявлен статическим?

main() должен быть объявлен как статические, так как JVM не знает, как создать объект класса, поэтому необходим стандартный способ доступа к основному методу, который можно объявляя main() в static.

Если метод объявлен как static, мы можем вызвать этот метод вне класса без создания объекта с использованием синтаксиса ClassName.methodName();.

Таким образом, в этом случае JVM можно назвать нашим основным методом, как <ClassName>.<Main-Method>

Почему главный должен быть признан недействительным?

main() должен быть признан недействительным, потому что JVM не ожидает никакого значения от main(). Поэтому он должен быть объявлен как void.

Если имеется другой тип возврата, это RunTimeError, т. Е. NoSuchMethodFoundError.

Почему главный должен иметь аргументы в массиве String Array?

main() должны иметь аргументы типа String как массивы, так как JVM называет основной метод, передавая аргумент командной строки. Поскольку они хранятся в объекте строкового массива, он передается как аргумент main().

+0

Плюс 1 для подробного объяснения! – justcurious

0

В Java ваш главный метод всегда должен быть:

исполнение
public static void main(String args[]) 
  1. Программа начинается с main() функции, следовательно, функции main().

  2. Это должно быть public, так что оно доступно для внешней среды.

  3. main() метод всегда статичен, потому что, как вы знаете, что выполнение программы начинается main() метода и нет экземпляра класса, содержащего main() метода инициируются. Следовательно, поскольку статический метод может работать без необходимости любого экземпляра, он объявляется статическим.

  4. Java независим от платформы, поэтому вы можете попытаться скомпилировать java-файл в одной системе и попытаться выполнить файл класса на другом. Битовая архитектура каждой машины может отличаться, поэтому возвращаемый тип основной функции всегда должен быть main().

Надеюсь, это поможет.