Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> java

JDK, JRE и JVM: ключевые различия и как они работают вместе

Что такое Java Development Kit (JDK)?

JDK — это полный набор инструментов, позволяющий разработчикам писать, компилировать, отлаживать и запускать Java-приложения. Включает компилятор (javac), базовые библиотеки классов и набор утилит: отладчик, JavaDoc и др. Доступен для Windows, macOS, Linux, Solaris; на одной машине могут сосуществовать несколько версий.

Что такое Java Runtime Environment (JRE)?

JRE — среда выполнения, позволяющая запускать Java-программы. Включает JVM, базовые библиотеки и вспомогательные файлы. Пользователям, которым не нужна разработка, достаточно установить JRE вместо полного JDK.

Что такое Java Virtual Machine (JVM)?

JVM — движок, интерпретирующий или JIT-компилирующий Java-байткод в нативный машинный код. Ядро Java-платформы, обеспечивающее платформонезависимое выполнение, управление памятью и безопасность.

Зачем нужен JDK?

Зачем нужен JRE?

Зачем нужен JVM?

Ключевые особенности JDK

Ключевые особенности JRE

Ключевые особенности JVM

Как работает JDK

JDK, JRE и JVM: ключевые различия и как они работают вместе

JDK интегрирует JRE и добавляет инструменты разработки. Разработчик пишет код, javac компилирует в байт-код, а запускатель java стартует JVM для выполнения программы.

Как работает JRE

JDK, JRE и JVM: ключевые различия и как они работают вместе

JRE содержит JVM, загрузчики классов и библиотеки времени выполнения. При запуске программы JVM загружает классы, верифицирует байт-код и выполняет его через интерпретатор или JIT-компилятор.

Как работает JVM

JDK, JRE и JVM: ключевые различия и как они работают вместе

Основные компоненты JVM:

Сравнение JDK, JRE и JVM

КомпонентПолное названиеНазначениеЗависимость от платформыВключённые инструменты
JDKJava Development KitПолная среда разработки для Java-приложений.Зависит от платформыКомпилятор, отладчик, JavaDoc и др.
JREJava Runtime EnvironmentЗапуск Java-приложений: базовые библиотеки и JVM.Зависит от платформыНет (только среда выполнения)
JVMJava Virtual MachineВыполнение байт-кода; платформонезависимое runtime.Зависит от платформы (реализация)Нет (только движок выполнения)

java

  1. Понимание Java: JDK, JRE и JVM — подробное объяснение
  2. Освоение операторов Java: типы, синтаксис и практические примеры
  3. Комментарии в Java: типы, использование и лучшие практики
  4. Освоение улучшенного цикла for в Java: синтаксис, примеры и лучшие практики
  5. Интерфейсы в Java: концепции, реализация и лучшие практики
  6. Try-with-resources в Java: автоматическое управление ресурсами
  7. Аннотации в Java: типы, размещение и практические примеры
  8. Java 10: единый репозиторий JDK (Consolidated JDK Forest)
  9. Java 10: Thread-Local Handshakes для ускорения VM safepoints
  10. Логирование в Java: лучшие практики для надежного кода