Три кита на которых основана не только работа Java, но и с которых начинается практически любое собеседование на Junior Java Developer.
JVM (Java Virtual Machine) - это виртуальная машина, которая выполняет Java-код. Она является частью платформы Java и обеспечивает переносимость программ между различными операционными системами. JVM интерпретирует байт-код, который генерируется компилятором Java, и выполняет его на реальном процессоре. Она также управляет памятью и сборкой мусора, обеспечивает безопасность исполнения кода и поддерживает многопоточность.
Каждая версия JVM соответствует определенной версии Java и включает новые функции, улучшения производительности и исправления ошибок. Новые версии JVM могут также поддерживать новые функции языка Java, такие как лямбда-выражения или модули. Более новые версии JVM обычно имеют более высокую производительность и могут использовать новейшие технологии, такие как многопоточность и асинхронность. Однако, при переходе на более новую версию JVM, могут возникать проблемы совместимости со старым кодом, который может не работать должным образом на новой версии JVM.
JRE (Java Runtime Environment) - это программное обеспечение, которое включает в себя JVM и другие компоненты, необходимые для запуска Java-приложений. JRE позволяет запускать Java-приложения на компьютере без необходимости установки полного пакета JDK (Java Development Kit). JRE включает в себя только компоненты, необходимые для запуска Java-приложений, но не включает компоненты для разработки приложений, такие как компилятор и отладчик.
JDK (Java Development Kit) - это пакет программного обеспечения, который включает в себя JRE, компилятор Java и другие инструменты, необходимые для разработки Java-приложений. JDK предоставляет все компоненты, необходимые для разработки, отладки и тестирования Java-приложений. Он включает в себя JRE, чтобы можно было запускать и тестировать приложения на локальной машине. JDK является полным пакетом для разработки Java-приложений, включая как компоненты для запуска, так и для разработки.
Подписывайтесь на наш канал, изучайте Java