Онлайн-компилятор Java — это веб-сервис, который принимает исходный код в окне браузера, компилирует и запускает его на своем сервере и возвращает вывод программы обратно на страницу. Устанавливать JDK на свой компьютер не нужно: достаточно открыть сайт, вставить код и нажать «Run».
Содержание
Ниже — как такой сервис устроен на самом деле, первый рабочий пример, который можно скопировать и запустить, обзор популярных онлайн-компиляторов с подсказкой, когда какой брать, границы применимости и типичная ошибка новичка с именем класса. Инструменты и версии проверены на 16.09.2026.
Как это работает: код в браузере, запуск на сервере
Важная деталь, которую редко проговаривают: браузер сам код на Java не исполняет. В браузере работает только JavaScript и WebAssembly, а Java-программе нужна виртуальная машина JVM. Поэтому онлайн-компилятор действует иначе.
Цепочка простая: вы набираете исходник в текстовом поле, сервис отправляет его на сервер, там код компилируется компилятором javac в байт-код и запускается на JVM, а консольный вывод возвращается обратно и показывается под редактором. «Запуск в браузере» — это про удобный интерфейс, а не про место выполнения.
Из этого следует пара выводов. Программа выполняется в чужой временной среде: файлы, которые она создаст, и введенные данные там не сохраняются между запусками. И код уходит на сторонний сервер — для учебных примеров это нормально, для рабочего или закрытого кода лучше локальная среда.
Три близких понятия удобно различать сразу:
- онлайн-компилятор — минимальное поле для кода и кнопка запуска, показывает вывод и ошибки;
- онлайн-IDE — то же плюс несколько файлов, подсветка, автодополнение, иногда отладчик;
- песочница (playground) — площадка, чтобы быстро проверить идею и поделиться ссылкой на код.
Граница между ними размытая: многие сервисы совмещают все три роли.
Быстрый старт: первый код за минуту
Откройте любой онлайн-компилятор Java (конкретные сервисы — в следующем разделе), сотрите пример по умолчанию и вставьте эту программу целиком. Дальше разберем ее по частям.
public class Main {
public static void main(String[] args) {
System.out.println("Hello, Otus!");
}
}
После нажатия «Run» под редактором появится ровно одна строка:
Hello, Otus!
Если вы это увидели — сервис работает, и код запустился. Что здесь что:
public class Main— объявление класса. У онлайн-компиляторов исходник почти всегда сохраняется в файлMain.java, поэтому публичный класс должен называться именноMain(об этом — в разделе про ошибку).public static void main(String[] args)— точка входа. С этого метода начинается выполнение любой Java-программы.System.out.println(...)— вывод строки в консоль с переводом строки в конце. Текст для вывода пишут в двойных кавычках.
Добавим переменные, чтобы программа стала чуть содержательнее. Данные заданы прямо в коде, поэтому результат предсказуем и его можно сверить.
public class Main {
public static void main(String[] args) {
String name = "Мария";
int year = 2026;
System.out.println("Привет, " + name + "!");
System.out.println("Первый код на Java запущен в " + year + " году.");
}
}
Вывод:
Привет, Мария!
Первый код на Java запущен в 2026 году.
Оператор + со строкой соединяет текст и значения переменных: число year автоматически приводится к тексту при сцеплении со строкой.
Как читать ввод пользователя
По умолчанию онлайн-компилятор запускает программу без интерактивной консоли. Если код ждет ввод через Scanner, данные нужно заранее вписать в отдельное поле — оно обычно называется STDIN, Input или «Ввод» и находится рядом с окном вывода.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Как вас зовут? ");
String name = scanner.nextLine();
System.out.println("Привет, " + name + "!");
}
}
Если в поле ввода заранее написать Отус, программа выведет:
Как вас зовут? Привет, Отус!
Приглашение и ответ оказались в одной строке, потому что System.out.print (без ln) не переводит строку после приглашения. Это нормально: в онлайн-компиляторе ваш ввод не печатается в консоли по мере набора, как в обычном терминале, — он берется целиком из поля STDIN.
Популярные онлайн-компиляторы Java
Сервисов много, и все они универсальные: кроме Java поддерживают C, C++, Python, PHP, JavaScript и десятки других языков — язык выбирается в списке. Ниже — проверенные на 16.09.2026 варианты и подсказка, когда какой удобнее.
| Сервис | Что удобно | Когда брать |
|---|---|---|
| JDoodle | Быстрый запуск, поле ввода STDIN, выбор версии JDK, обмен ссылкой | Быстро проверить фрагмент и скинуть код другому |
| OnlineGDB | Онлайн-компилятор с отладчиком (точки останова, пошаговый проход) | Когда надо не просто запустить, а найти ошибку в логике |
| Programiz | Простой интерфейс, темная тема, встроенные примеры | Для самых первых шагов и учебных примеров |
| Tutorialspoint | Компилятор рядом с обучающими материалами по Java | Когда код проверяют по ходу чтения теории |
| mycompiler.io | Чистый минималистичный редактор с полем ввода | Когда нужен один экран без лишних панелей |
Универсального «лучшего» сервиса нет: для первой программы подойдет любой из списка, а выбор дальше зависит от задачи — быстрый прогон, отладка или обучение. Многие из них поддерживают выбор версии JDK, вплоть до актуальных: на сентябрь 2026 последняя версия с долгой поддержкой (LTS) — Java 25, предыдущая LTS — Java 21.
Что можно и чего нельзя
Онлайн-компилятор закрывает учебные и быстрые задачи, но у него есть границы. Держать их в голове полезно, чтобы не искать несуществующую кнопку.
- Подходит: проверить синтаксис, прогнать небольшой пример, разобрать учебную задачу, быстро показать код другому по ссылке.
- Ограниченно: ввод через STDIN работает, но интерактивного диалога «вопрос — ответ — снова вопрос», как в терминале, обычно нет — ввод задается заранее.
- Не подходит: проекты из многих файлов и библиотек, работа с локальными файлами и сетью, приложения с графическим интерфейсом (Swing, JavaFX), долгие вычисления — на публичных сервисах есть лимит по времени работы.
Для реальной разработки Java по-прежнему ставят JDK и среду разработки локально: IntelliJ IDEA, Eclipse или VS Code с расширениями. Онлайн-компилятор — это удобный вход и площадка для быстрых проб, а не замена полноценной среды.
Типичная ошибка новичка: имя публичного класса
Самый частый затык в онлайн-компиляторе связан не с логикой, а с именем класса. В Java публичный класс должен лежать в файле с тем же именем. Онлайн-сервисы почти всегда сохраняют код в файл Main.java, поэтому публичный класс обязан называться Main.
Стоит переименовать класс, оставив его публичным, — и код не компилируется:
public class Hello {
public static void main(String[] args) {
System.out.println("Hi");
}
}
Фактический вывод (сервис сохранил код как Main.java):
Main.java:1: error: class Hello is public, should be declared in a file named Hello.java
public class Hello {
^
1 error
Компилятор прямо говорит: публичный класс Hello должен лежать в файле Hello.java, а файл называется Main.java. Исправлений два. Первое — вернуть классу имя Main:
public class Main {
public static void main(String[] args) {
System.out.println("Hi");
}
}
Второе — убрать модификатор public у класса: непубличный класс не обязан совпадать по имени с файлом, и код class Hello { ... } тоже соберется. Точный текст ошибки и требование к имени файла зависят от того, как сервис называет файл; у большинства это Main.java, поэтому имя Main — самый надежный вариант.
Выводы
- Онлайн-компилятор Java запускает код не в браузере, а на своем сервере: браузер лишь отправляет исходник и показывает вывод.
- Для первого запуска достаточно класса
Mainс методомmainи вывода черезSystem.out.println— никакой установки JDK. - Ввод для
Scannerзадают заранее в отдельном поле STDIN, а не печатают в консоли по ходу. - Публичный класс на онлайн-сервисе должен называться
Main, иначе компиляция падает с ошибкой про имя файла. - Сервис выбирают под задачу: JDoodle — быстрый прогон, OnlineGDB — отладка, Programiz и Tutorialspoint — обучение.
- Для проектов с файлами, библиотеками, сетью или интерфейсом нужна локальная среда, а не онлайн-компилятор.
Где применять на практике
Онлайн-компилятор — удобный вход в Java: на нем можно разобрать синтаксис, прогнать задачи с курса или собеседования и не отвлекаться на установку окружения. Но по мере роста проектов появляются несколько файлов, внешние библиотеки, сборка через Maven или Gradle и отладка — и тогда без локальной среды и системного понимания языка уже не обойтись.
Освойте тему на практике
Пройти путь от первых строк в браузере до настоящих проектов системно, с проверкой кода практикующими разработчиками, помогает курс Обучение Java-разработчика с нуля: он ведет от базового синтаксиса к самостоятельным программам.
Освойте тему на практике
Посмотреть, как разбирают такие темы вживую, и задать вопросы преподавателям можно на открытых вебинарах Otus — они бесплатные и проходят регулярно.
Смежные темы: Компиляторы: назначение и виды, Как обновить версию Java, Где писать программный код: список приложений.
FAQ
Нужно ли регистрироваться, чтобы запустить код? Для разового запуска обычно нет: код вставляют и жмут «Run» без аккаунта. Регистрация нужна, только чтобы сохранять свои проекты и получать постоянные ссылки на них.
Можно ли на онлайн-компиляторе выбрать версию Java? На части сервисов да — версия JDK выбирается в настройках, вплоть до актуальных LTS (Java 21 и Java 25). Если выбора нет, сервис использует свою версию по умолчанию, и это стоит учитывать для новых возможностей языка.
Безопасно ли вставлять туда рабочий код? Код уходит на сторонний сервер, поэтому закрытый или коммерческий код в публичный онлайн-компилятор лучше не вставлять. Для учебных примеров рисков нет, а для рабочих задач надежнее локальная среда.



