Урок 1. Установка JDK и первая программа
В этом уроке на вашем компьютере появится JDK, а вы напишете, скомпилируете и запустите первую программу на Java. Понадобится около получаса.
Как запускается программа на Java
Программа на Java — обычный текстовый файл с расширением .java. Запуск проходит в два шага:
- Компилятор
javacпроверяет текст программы и переводит его в байт-код — файл с расширением.class. Если в программе ошибка, компилятор сообщает, в какой строке и что не так, и файл.classне появляется. - Виртуальная машина Java (JVM) — команда
java— выполняет байт-код.
Для этого нужен JDK (Java Development Kit): в нём есть и компилятор, и виртуальная машина. Встречается ещё сокращение JRE (Java Runtime Environment) — это только виртуальная машина, без компилятора: запускать готовые программы можно, писать свои — нет.
Шаг 1. Установите JDK
Берите версию LTS — 21 или новее (Java 17 тоже подойдёт). Официальные бесплатные сборки:
- Eclipse Temurin — на сайте adoptium.net, для Windows, Linux и macOS;
- Oracle JDK — на сайте oracle.com/java;
- в Linux — пакет из репозитория системы.
Java, которую предлагает скачать сайт java.com, — это старая Java 8 для запуска готовых программ, без компилятора. Для учёбы она не подходит: нужен JDK.
Как ставить, зависит от системы на компьютере — выберите свою.
Windowsустановщик .msi
Скачайте с adoptium.net установщик .msi для Windows x64 и запустите его. На шаге выбора компонентов включите пункт, который задаёт переменную JAVA_HOME (Set JAVA_HOME): сразу он выключен, а переменная нужна многим программам для Java. Пункт добавления в PATH (список папок, где система ищет команды) включён сразу, его не снимайте: благодаря ему команды java и javac работают в любой папке.
LinuxUbuntu, Debian, Linux Mint
Откройте терминал и выполните две команды: первая обновляет список пакетов, вторая ставит JDK.
sudo apt update
sudo apt install openjdk-21-jdkЕсли пакета с таким именем нет (в старых выпусках систем), поставьте openjdk-17-jdk. Нужен пакет именно с jdk в имени: в пакетах с jre компилятора нет.
macOSустановщик .pkg
Скачайте с adoptium.net установщик .pkg и запустите его.
Проверьте установку. Откройте новое окно терминала (в Windows — «Командная строка» или PowerShell) и наберите:
java -version
javac -versionОбе команды выводят номер версии. Если в ответ «javac не является внутренней или внешней командой» — смотрите справку javac не является внутренней или внешней командой.
Шаг 2. Напишите программу
Создайте папку для программ, например C:\java в Windows или ~/java в Linux и macOS. В ней создайте файл Main.java и наберите в любом текстовом редакторе (в «Блокноте» тоже можно — при сохранении выберите тип «Все файлы», иначе файл получит имя Main.java.txt):
public class Main {
public static void main(String[] args) {
System.out.println("Привет, мир!");
}
}Привет, мир!Что здесь написано:
public class Main— класс с именемMain. В Java любой код живёт внутри класса. Имя класса с пометкойpublicдолжно совпадать с именем файла, вплоть до больших и маленьких букв: классMain— файлMain.java.public static void main(String[] args)— главный метод, с него начинается выполнение программы. Пока запомните эту строку целиком: что значит каждое слово в ней, объясняют следующие уроки.System.out.println("Привет, мир!");— выводит текст в кавычках и переводит строку.- Фигурные скобки
{ }отмечают начало и конец класса и метода. Каждая команда заканчивается точкой с запятой.
Java различает большие и маленькие буквы: System и system, Main и main — разные имена.
Шаг 3. Скомпилируйте и запустите
Откройте терминал в папке с файлом. Перейти в папку можно командой cd, например cd C:\java или cd ~/java. В Windows можно и так: откройте папку в Проводнике, наберите в адресной строке cmd и нажмите Enter. Затем:
$ javac Main.java
$ java Main
Привет, мир!Первая команда создаёт рядом файл Main.class. Вторая запускает его: команде java передаётся имя класса, без .class на конце.
Начиная с Java 11 простую программу из одного файла можно запустить и одной командой — java сама скомпилирует её в памяти:
$ java Main.java
Привет, мир!Файл .class при этом не создаётся. Для учебных примеров это удобно, но для программы из нескольких файлов нужны javac и java по отдельности или среда разработки.
Если в папке уже лежит Main.class от команды javac, запуск java Main.java может закончиться ошибкой error: class found on application class path: Main. Удалите Main.class или запускайте java Main.
Среда разработки IntelliJ IDEA
IntelliJ IDEA — среда разработки для Java от компании JetBrains. Основные возможности в ней бесплатны; до версии 2025.3 бесплатный выпуск назывался Community Edition. Скачать её можно на сайте jetbrains.com. Подойдут и другие бесплатные среды — например, Eclipse или VS Code с расширениями для Java.
- Создайте проект: на начальном экране — New Project, в списке слева — Java. Задайте имя проекта, систему сборки IntelliJ и в поле JDK выберите установленный JDK (там же можно скачать JDK, если его ещё нет).
- В панели проекта слева нажмите правой кнопкой на папку
srcи выберите New → Java Class, введите имяMain. - Наберите код программы. Подсказка:
psvmи клавиша Tab вставляют заготовку методаmain, аsoutи Tab —System.out.println();. - Нажмите зелёный треугольник слева от строки с
mainи выберите запуск. Вывод программы появится в окне внизу.
Среда сама компилирует программу, подчёркивает ошибки ещё до запуска и подсказывает имена методов.
Частые ошибки
file not found: Main.java—javacзапущен не в той папке или файл называется иначе (например,Main.java.txt: в Windows расширения файлов по умолчанию скрыты). Посмотрите содержимое папки командойdir.';' expected— пропущена точка с запятой. Компилятор показывает номер строки: смотрите эту строку и конец предыдущей.class Main is public, should be declared in a file named Main.java— имя файла не совпадает с именем класса. Переименуйте файл или класс.package system does not exist— написаноsystemвместоSystem.Could not find or load main class— командаjavaне нашла класс: запуск из другой папки,java Main.classвместоjava Mainи другие причины разобраны в справке Could not find or load main class.- Вместо русских букв в выводе — непонятные значки. Так бывает с Java 17 в Windows, если файл сохранён в кодировке UTF-8: компилятор читает его в кодировке Windows. Укажите кодировку явно —
javac -encoding UTF-8 Main.java. С Java 18 файлы программ по умолчанию читаются в UTF-8, а IntelliJ IDEA настраивает кодировку сама.
Коротко
- Для программ на Java нужен JDK: в нём компилятор
javacи виртуальная машинаjava. Берите версию LTS. - Программа живёт в классе; класс
Main— в файлеMain.java, выполнение начинается с методаmain. javac Main.javaсоздаётMain.class,java Mainего запускает. С Java 11 —java Main.javaодной командой.- Каждая команда заканчивается
;, большие и маленькие буквы различаются. - IntelliJ IDEA компилирует и запускает программу кнопкой и показывает ошибки ещё при наборе.