Структура программы Java, метод main и вывод данных в консоль
Структура программы Java, метод main и вывод данных в консоль
Добро пожаловать на курс «Основы синтаксиса Java». Это наша первая лекция, и сегодня мы заложим фундамент, на котором будет строиться всё ваше дальнейшее обучение. Мы разберем анатомию Java-приложения, узнаем, с чего начинается выполнение любой программы, и научим компьютер «разговаривать» с нами через консоль.
Философия Java: Пиши один раз, запускай везде
Прежде чем мы напишем первую строчку кода, важно понять, как работает Java. В отличие от многих других языков, которые компилируются (переводятся) напрямую в машинный код конкретного процессора, Java использует промежуточное звено.
- Исходный код (.java): Это то, что пишет программист. Текст, понятный человеку.
- Компиляция: Специальная программа (компилятор
javac) проверяет ваш код на ошибки и переводит его в байт-код. - Байт-код (.class): Это набор инструкций, который не зависит от операционной системы.
- JVM (Java Virtual Machine): Виртуальная машина Java, установленная на компьютере, читает байт-код и переводит его в команды, понятные конкретному устройству.
Именно благодаря JVM работает принцип: Write Once, Run Anywhere (Написал один раз — запускай везде).
Анатомия Java-программы
В языке Java царит строгий порядок. Весь код должен находиться внутри классов. Представьте, что класс — это контейнер или чертеж, который описывает поведение программы.
Минимальная структура программы выглядит так:
public class FirstProgram {
// Здесь будет код
}
Правило именования файла
Это критически важное правило, которое новички часто нарушают: имя файла должно в точности совпадать с именем публичного класса.
- Если класс называется
FirstProgram, то файл обязательно должен называтьсяFirstProgram.java. - Java чувствительна к регистру (case-sensitive).
FirstProgramиfirstprogram— это два разных имени.
Метод main: Точка входа
Представьте огромное здание с тысячей комнат. Чтобы попасть внутрь, вам нужна главная дверь. В Java такой дверью является метод main. Когда вы запускаете программу, JVM ищет именно этот метод, чтобы начать выполнение инструкций.
Полная сигнатура (объявление) метода выглядит пугающе для новичка, но мы разберем каждое слово:
public static void main(String[] args) {
// Команды выполняются здесь
}
Давайте препарируем эту строку:
- public: Модификатор доступа. Он говорит о том, что этот метод «публичный», то есть доступен для вызова извне (в данном случае — виртуальной машиной Java).
- static: Означает «статический». Это позволяет JVM вызвать метод
mainбез необходимости создавать объект (экземпляр) класса. Программа еще не начала работать, объектов еще нет, но метод уже нужно вызвать. - void: Тип возвращаемого значения. В английском языке void означает «пустота». Это ключевое слово сообщает, что метод просто выполняет работу и не возвращает никакого результата (числа или строки) обратно.
- main: Имя метода. Это зарезервированное имя, которое ищет JVM.
- String[] args: Аргументы метода. Это массив строк, который позволяет передавать данные в программу при её запуске из командной строки. Даже если мы ничего не передаем, эта часть обязательна.
Тело программы и синтаксис
Код, который должен выполняться, пишется внутри фигурных скобок {}. В Java фигурные скобки обозначают начало и конец блока кода.
- Скобки после
class FirstProgramограничивают весь класс. - Скобки после
main(...)ограничивают методmain.
Точка с запятой
В русском языке мы ставим точку в конце предложения. В Java мы ставим точку с запятой ; в конце каждой команды (инструкции). Это сигнал компилятору: «Команда закончена, переходи к следующей».
Пропущенная точка с запятой — самая частая ошибка начинающего программиста, из-за которой код не компилируется.
Вывод данных в консоль
Чтобы программа могла «пообщаться» с нами, мы используем вывод текста на экран. Для этого в Java существует стандартная команда:
System.out.println("Привет, мир!");
Разберем, что здесь происходит:
- System: Встроенный класс, предоставляющий доступ к системным ресурсам.
- out: Объект внутри класса System, отвечающий за стандартный поток вывода (обычно это консоль).
- println: Метод (команда), который печатает переданный текст и переводит курсор на новую строку.
print vs println
Существует два похожих метода:
System.out.println()— печатает текст и в конце добавляет невидимый символ переноса строки. Следующий текст появится ниже.System.out.print()— печатает текст и оставляет курсор на той же строке. Следующий текст «приклеится» к этому.
Пример:
public class OutputExample {
public static void main(String[] args) {
System.out.print("Java ");
System.out.print("это ");
System.out.println("круто!");
System.out.println("Новая строка.");
}
}
Результат в консоли:
Java это круто!
Новая строка.
Обратите внимание: первые три команды собрали текст в одну строку, потому что println был использован только в третьей команде.
Комментарии в коде
Хороший код должен быть понятен не только машине, но и человеку. Для заметок программисты используют комментарии. Компилятор полностью игнорирует их.
- Однострочный комментарий: Начинается с
//. Всё, что написано после этих символов до конца строки, не выполняется. - Многострочный комментарий: Заключается между
/*и*/. Позволяет писать длинные пояснения на несколько строк.
/*
Это наша первая программа.
Она выводит приветствие.
*/
public class Hello {
public static void main(String[] args) {
// Эта команда выводит текст
System.out.println("Hello, Java!");
}
}
Итоговый чек-лист синтаксиса
Чтобы ваша первая программа заработала, проверьте себя по этому списку:
- Весь код находится внутри
class. - Имя файла совпадает с именем класса (включая регистр букв).
- Есть метод
public static void main(String[] args). - Текстовые строки заключены в двойные кавычки
"текст". - В конце каждой команды стоит точка с запятой
;. - Все открытые фигурные скобки
{имеют закрывающую пару}.
Теперь вы готовы написать свой первый код. В следующих статьях мы начнем работать с переменными и типами данных, наполняя наши программы смыслом и логикой.