В любом языке программирования программа «Hello World» считается простой программой, которая выводит Hello, World! на экран. Она часто используется для проверки того, что среда выполнения настроена правильно и что мы готовы разрабатывать реальные приложения.
В этом уроке по Java мы научимся писать нашу первую программу «Hello World» на Java.
1. Программа Java Hello World – Java 21 и более поздние версии
Начиная с Java 21, мы можем использовать неименованные классы и основные методы экземпляра, которые позволяют нам загружать класс с минимальным синтаксисом. Это нацелено на пользу в основном новичкам, которые только начали изучать Java и хотят опробовать синтаксис языка для быстрого обучения.
Следующий код — это полностью функциональный класс, который выведет на консоль вывод «Hello, World!». Мы можем сохранить этот класс в любом файле Java, например HelloWorld.Java, а затем запустить его.
void main() {System.out.println("Привет, мир!");}
При запуске приложения оно выводит сообщение в консоль.
Hello, World!
2. Программа «Hello World» на Java [≤Java 20]
Следующая программа — самая простая и самая многословная программа Java, которая выводит «Hello, World!» в выходной консоли или приглашении. Она определяет класс HelloWorld.
Обратите внимание, что имя класса может быть любым. Мы должны убедиться, что класс хранится в файле с тем же именем.
публичный класс HelloWorld {public static void main(String[] args) {System.out.println("Привет, мир!");}}
Мы можем скопировать вышеприведенную программу и вставить ее прямо в редактор. Тем не менее, я рекомендую вам написать ее самостоятельно. Это поможет понять разницу в синтаксисе, в основном в нижнем или верхнем регистре в ключевых словах, классах и методах.
Не забудьте сохранить файл Java с именем HelloWorld.java. В Java имя класса и файла(в котором он записан) должны совпадать.
3. Компиляция и выполнение программы
Java не запускает исходные файлы напрямую. Мы должны скомпилировать исходный файл .java в файл .class, который JVM может понять и выполнить. Обратите внимание, что Java чувствителен к регистру, поэтому убедитесь, что заглавные буквы в имени файла соответствуют имени класса.
$ javac HelloWorld.java
Команда javac создаст файл HelloWorld.class в том же каталоге, который содержит версию байт-кода программы. Помните, байт-код не является исполняемым кодом. Байт-код должен быть выполнен виртуальной машиной Java.
Теперь мы можем выполнить файл класса с помощью команды java, которая использует интерпретатор Java для запуска программы.
$ java HelloWorld.класс
Обратите внимание, что программа запущена, и вывод отображается в терминале. Программа завершается и заканчивается сразу после печати сообщения, поскольку после этого в программе больше ничего не нужно делать.
Привет, мир!
Прежде чем двигаться дальше, важно отметить, что начиная с JDK 11, Java предоставляет способ запускать некоторые типы простых программ напрямую из исходного файла, без явного вызова javac. Но ограничение заключается в том, что программа не может использовать никакие внешние зависимости, кроме модуля java.base. И программа может быть только однофайловой программой.
$ java HelloWorld.java //Выводит Hello World!
4. Как это работает?
Java — объектно-ориентированный язык программирования. Все в Java инкапсулировано внутри класса Java. В данном случае имя класса — HelloWorld.
Класс HelloWorld содержит метод main(), который является единственной отправной точкой для JVM для запуска выполнения любой программы, написанной на Java. Помните, что мы должны предоставить точный синтаксис метода main() в программе, которую мы хотим выполнить.
public static void main(String[] args) { ... }
Давайте отметим несколько важных наблюдений из этой программы:
- public означает, что все остальные классы могут получить к нему доступ.
- static означает, что мы можем запустить этот метод, не создавая экземпляр HelloWorld.
- void означает, что этот метод не возвращает никакого значения.
- main — имя метода.
- String[] — это тип, который используется для ссылки на текстовое содержимое в Java. Скобки [ ] указывают, что это тип массива.
- args — имя аргумента метода, который имеет тип String[]. Это означает, что основной метод может принимать несколько текстовых входов при запуске выполнения программы. Эти аргументы обычно являются пользовательскими входами в программу.
- System.out.println — это инструкция, данная JVM для вывода заданной строки Hello, World! на консоль(целевой объект вывода по умолчанию).