Какой метод определяет точку входа в java программу

main в Java – это обычно первый метод, о котором узнают начинающие, потому что он является точкой входа в программирование на Java. Метод main может содержать код для выполнения или вызова других методов и его можно вложить в любой класс, который является частью программы. Более сложные программы обычно содержат класс, в котором есть только метод main. Название класса, содержащего main, может быть любым, но обычно его называют просто класс Main.

В следующих примерах класс, содержащий метод main, называется Test:

public class Test public static void main(String[] args) System.out.println(«Hello, World!»); > >

В этом мануале мы разберем, что значит каждая составляющая данного метода.

Синтаксис метода Main

Синтаксис метода всегда выглядит так:

public static void main(String[] args) // some code >

Изменить здесь можно только название аргумента массива String. Например, вы можете изменить args на myStringArgs. Аргумент массива String может быть записан как String… args или String args[].

Уроки Java — Методы, как их писать и что делают

Модификатор public

Чтобы JRE могла получить доступ к main методу и выполнить его, модификатором доступа этого метода должен быть public. Если метод не является public, доступ к нему будет ограничен. В следующем примере кода в методе main модификатор доступа public отсутствует:

public class Test static void main(String[] args) System.out.println(«Hello, World!»); > >

Возникает ошибка при компиляции и запуске программы. Это происходит потому, что метод main не является общедоступным и JRE не может его найти:

Error: Main method not found in class Test, please define the `main` method as: public static void main(String[] args) or a JavaFX application class must extend javafx.application.Application

Модификатор static

При запуске Java-программы объект класса отсутствует. Чтобы JVM могла загрузить класс в память и вызвать main метод без предварительного создания экземпляра класса, main методу нужен модификатор static. В следующем примере кода в main методе нет модификатора static:

public class Test public void main(String[] args) System.out.println(«Hello, World!»); > >

Читайте также:
Как пользоваться программой спотифай

Так как метод main не имеет модификатора static, при компиляции и запуске программы возникает следующая ошибка:

Error: Main method is not static in class Test, please define the `main` method as: public static void main(String[] args)

Модификатор void

Каждый метод Java должен указывать тип возвращаемого значения. Тип возвращаемого значения main метода в Java — void, поскольку он ничего не возвращает. Когда main метод завершает выполнение, программа Java завершает работу, поэтому в возвращаемом объекте нет необходимости. В следующем примере метод main пытается что-то вернуть при типе возврата void:

public class Test public static void main(String[] args) return 0; > >

При компиляции программы возникает ошибка, потому что Java не ожидает возврата значения, когда тип возврата void:

Java для начинающих. Урок 15: Методы в Java.


Test.java:5: error: incompatible types: unexpected return value return 0; ^ 1 error

Метод main

При запуске программа Java всегда ищет метод main. Данный метод может называться только так, его нельзя переименовывать. В следующем примере кода мы для наглядности переименовали main метод в myMain:

public class Test public static void myMain(String[] args) System.out.println(«Hello, World!»); > >

Во время компиляции и запуска программы возникает ошибка, так как JRE не находит метод main в классе:

Error: Main method not found in class Test, please define the `main` method as: public static void main(String[] args) or a JavaFX application class must extend javafx.application.Application

Массив String[] args

Main принимает один аргумент массива String. Каждая строка в массиве является аргументом командной строки. Их можно использовать, чтобы влиять на работу программы или передавать в нее информацию во время выполнения. Далее показано, как вывести аргументы командной строки при запуске программы:

public class Test public static void main(String[] args) for(String s : args) System.out.println(s); > > >

Когда скомпилируете программу и потом запустите ее с несколькими аргументами командной строки, разделенными пробелами, аргументы будут выводиться в терминале:

java Test 1 2 3 “Testing the main method”

1 2 3 Testing the main method

Заключение

В этой статье мы подробно остановились на каждом компоненте метода main в Java.

Источник: www.8host.com

Где у Java приложения точка входа?

В обычном Java приложении всегда должен быть main class, содержащий метод main . С него начинается исполнение всей программы. Main class-ом может быть не только класс, но и интерфейс или енам. Для JavaFX приложения главный класс должен реализовывать javafx.application.Application .

Читайте также:
Сетевые приложения примеры программ

main обязательно public static . Дополнительно, методу разрешено иметь модификатор strictfp. На аннотации и список исключений ограничений не накладывается.

В главном методе должен быть объявлен единственный аргумент – массив строк. Обе конструкции String[] и String. компилируются в один и тот же байт-код, так что приемлемы оба варианта. Название массива может быть любым, а значение будет содержать аргументы командной строки.

Когда приложение запускается как classpath, главный класс передается параметром командной строки. Если выполняется единственный исходник, он и описывает main class.

Для исполняемого jar-файла ( java -jar MyJar.jar ), его главный класс должен быть указан в манифесте. Внутри архива, в файл META-INF/MANIFEST.MF добавляется строчка вида Main-Class: ru.itsobes.MyClass . Иначе запуск завершается ошибкой «no main manifest attribute».

В случае, когда в указанном главном классе не оказывается метода, который бы удовлетворял всем критериям главного метода, программа падает с ошибкой «Main method not found».

В апплетах вместо main входной точкой служат методы init и start . Начиная с версии Java 9 технология апплетов объявлена устаревшей, а с 11 – совсем удалена. Не будем останавливаться на них подробнее.

Источник: itsobes.ru

Основы программирования на Java

Основным строительным блоком программы на языке Java являются инструкции (statement). Каждая инструкция выполняет некоторое действие, например, вызовы методов, объявление переменных и присвоение им значений. После завершения инструкции в Java ставится точка с запятой (;). Данный знак указывает компилятору на конец инструкции. Например:

System.out.println(«Hello Java!»);

Данная строка представляет вызов метода System.out.println , который выводит на консоль строку «Hello Java!». В данном случае вызов метода является инструкцией и поэтому завершается точкой с запятой.

Кроме отдельных инструкций распространенной конструкцией является блок кода. Блок кода содержит набор инструкций, он заключается в фигурные скобки, а инструкции помещаются между открывающей и закрывающей фигурными скобками:

В этом блоке кода две инструкции, которые выводят на консоль определенную строку.

Выполнение программы. Метод main

Java является объектно-ориентированным языком, поэтому всю программу можно представить как набор взаимодействующих между собой классов и объектов. В первой главе при создании первого приложения программа была определена следующим образом:

Читайте также:
Интерактивные компьютерные программы это

public class Program < public static void main (String args[])< System.out.println(«Hello Java!»); >>

То есть основу нашей программы составляет класс Program. При определении класса вначале идет модификатор доступа public , который указывает, что данный класс будет доступен всем, то есть мы сможем его запустить из командной строки. Далее идет ключевое слово class , а затем название класса. После названия класса идет блок кода, в котором расположено содержимое класса.

Входной точкой в программу на языке Java является метод main , который определен в классе Program. Именно с него начинается выполнение программы. Он обязательно должен присутствовать в программе. При этом его заголовок может быть только таким:

public static void main (String args[])

При запуске приложения виртуальная машина Java ищет в главном классе программы метод main с подобным заголовком, и после его обнаружения запускает его.

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

После заголовка метода идет его блок, который содержит набор выполняемых инструкций.

Комментарии

Код программы может содержать комментарии. Комментарии позволяют понять смысл программы, что делают те или иные ее части. При компиляции комментарии игнорируются и не оказывают никакого влияния на работу приложения и на его размер.

В Java есть два типа комментариев: однострочный и многострочный. Однострочный комментарий размещается на одной строке после двойного слеша //. А многострочный комментарий заключается между символами /* текст комментария */ . Он может размещаться на нескольких строках. Например:

/* многострочный комментарий Объявление нового класса, который содержит код программы */ public class Program < // начало объявления класса Program // определение метода main public static void main (String args[])< // объявление нового метода System.out.println(«Hello Java!»); // вывод строки на консоль >// конец объявления нового метода > // конец объявления класса Program

Источник: metanit.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru