Java выполняет как компиляцию, так и интерпретацию,
В Java программы не компилируются в исполняемые файлы; они компилируются в байт-код (как обсуждалось ранее), который JVM (виртуальная машина Java) затем интерпретирует / выполняет во время выполнения. Исходный код Java компилируется в байт-код, когда мы используем компилятор javac. Байт-код сохраняется на диске с расширением файла .class.
Когда программа должна быть запущена, байт-код преобразуется байт-код может быть преобразован с использованием JIT-компилятора. Результатом является машинный код, который затем загружается в память и выполняется.
Javac - это компилятор Java, который компилирует код Java в байт-код. JVM - это виртуальная машина Java, которая запускает / интерпретирует / переводит байт-код в собственный машинный код. В Java, хотя он считается интерпретируемым языком, он может использовать JIT (Just-in-Time) компиляцию, когда байт-код находится в JVM. Компилятор JIT считывает байт-коды во многих разделах (или полностью, редко) и динамически компилирует их в машинный код, чтобы программа могла работать быстрее, а затем кэшировать и повторно использовать позже без необходимости перекомпиляции. Таким образом, JIT-компиляция сочетает в себе скорость компилируемого кода с гибкостью интерпретации.
интерпретируемый язык - это тип языка программирования, для которого большая часть реализации выполняют инструкции напрямую и свободно, без предварительной компиляции программы в инструкции на машинном языке. Интерпретатор выполняет программу напрямую, переводя каждый оператор в последовательность из одной или нескольких подпрограмм, уже скомпилированных в машинный код.
скомпилированный язык - это язык программирования, реализациями которого обычно являются компиляторы (переводчики которые генерируют машинный код из исходного кода), а не интерпретаторы (пошаговые исполнители исходного кода, где не выполняется предварительная трансляция)
В реализациях современных языков программирования, таких как Java, все более популярными становятся платформы, предоставляющие оба варианта.
person
prime
schedule
04.04.2018