Каковы минимальные требования для запуска Java-класса на JVM?

«Каковы минимальные требования для запуска Java-класса на JVM?» — вопрос из категории Java Core, который задают на 10% собеседований Java Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для успешного запуска класса на JVM необходимо выполнить три ключевых шага:

  1. Написать класс с точкой входа. Класс должен содержать метод с точно определенной сигнатурой:

    public class HelloWorld {
        // Метод должен быть public, static, void, называться 'main' и принимать String[]
        public static void main(String[] args) {
            System.out.println("Hello from JVM!");
        }
    }
  2. Скомпилировать исходный код в байт-код. Используйте компилятор javac:

    javac HelloWorld.java

    В результате создастся файл HelloWorld.class.

  3. Запустить байт-код с помощью JVM. Используйте утилиту java, передав ей имя класса (без расширения .class):

    java HelloWorld

Критически важные условия:

  • Сигнатура main: public static void main(String[] args). Модификатор public обязателен для доступа JVM.
  • Совпадение имен: Для public класса имя файла (HelloWorld.java) должно точно совпадать с именем класса.
  • Наличие JRE/JDK: В системе должен быть установлен Java Runtime Environment (JRE) или Java Development Kit (JDK), а утилита java — доступна в переменной окружения PATH.
  • Класс-пути (Classpath): JVM ищет .class файлы в текущей директории или по путям, указанным в параметре -cp (classpath).