Минимальная программа
public class Main { public static void main(String[] args) { System.out.println("Hello, Java!"); }}Разберем по частям:
public class Main— объявление класса. В Java весь код живет внутри классов.public static void main(String[] args)— точка входа:public— доступен извне, JVM должна его вызвать;static— вызывается без создания объекта;void— ничего не возвращает;String[] args— аргументы командной строки.System.out.println(...)— вывод строки с переводом строки.
Вывод на экран
public class Output { public static void main(String[] args) { System.out.println("С переводом строки"); System.out.print("Без перевода "); System.out.print("строки\n"); System.out.printf("Число: %d, дробное: %.2f, строка: %s%n", 42, 3.14159, "текст"); }}Вывод:
С переводом строкиБез перевода строкиЧисло: 42, дробное: 3.14, строка: текстОсновные спецификаторы printf:
| Спецификатор | Тип |
|---|---|
%d | целое |
%f | дробное, %.2f — два знака после запятой |
%s | строка |
%c | символ |
%b | boolean |
%n | перевод строки |
%x | шестнадцатеричное |
Комментарии
public class Comments { public static void main(String[] args) { // однострочный комментарий /* многострочный комментарий */ System.out.println("Код"); }}Комментарий документации /** ... */ используется перед классами и методами. Из него javadoc генерирует HTML-справку:
/** * Складывает два числа. * * @param a первое слагаемое * @param b второе слагаемое * @return сумма */public static int sum(int a, int b) { return a + b;}Правила именования
| Элемент | Стиль | Пример |
|---|---|---|
| Класс, интерфейс, enum, record | PascalCase | UserService |
| Метод, переменная | camelCase | userName, getAge |
| Константа | UPPER_SNAKE_CASE | MAX_SIZE |
| Пакет | нижний регистр | com.example.app |
Идентификаторы чувствительны к регистру. Нельзя использовать ключевые слова вроде class, int, for.
Точки с запятой и блоки
Каждая инструкция заканчивается ;. Блоки кода ограничиваются фигурными скобками { }. Отступы Java не требует, но принято 4 пробела.
Несколько классов в одном файле
В одном файле может быть только один public-класс, имя которого совпадает с именем файла. Остальные классы без модификатора допустимы, но на практике каждый класс кладут в отдельный файл.
