JVM против JRE
Java - это язык программирования высокого уровня, который уникален тем, что программы, написанные на нем, могут выполняться практически на любой платформе. Но прежде чем вы сможете запустить программу на компьютере, вам необходимо установить определенное программное обеспечение; некоторые люди называют это JVM, в то время как другие используют JRE. Хотя большинство людей ссылаются на одно и то же, между JVM и JRE есть определенные различия. JVM на самом деле является приложением, которое является частью JRE. Чтобы запустить приложение, вам нужна JRE, которая содержит JVM.
JVM расшифровывается как виртуальная машина Java и создает виртуальный компьютер, который понимает код, на котором написаны Java-программы. Java-программы не написаны для конкретной ОС. Это дает ему возможность работать на любой платформе, но требует использования JVM для преобразования команд из байт-кода Java в конкретный машинный код..
Не все необходимое для всех программ содержится в JVM. Некоторые находятся в так называемых пакетных классах. Такие пакеты, как AWT, Swing, lang и многие другие, предоставляют JVM более сложные возможности. Когда вы объединяете все эти вспомогательные файлы вместе с JVM, это называется JRE или Java Runtime Environment. Проще говоря, JRE представляет собой комбинацию JVM и многих вспомогательных файлов, таких как пакеты, которые предоставляют среду, из которой может работать Java-программа..
Поскольку конечный пользователь не может редактировать или создавать приложения Java, JRE не содержит файлов, связанных с кодированием, проверкой и отладкой приложений Java; все, что находится в другом программном пакете Java. Это минимизирует размер JRE, чтобы большинству пользователей было проще и быстрее загружать и устанавливать JRE. Каждая программная платформа (то есть Windows, Linux, Mac) имеет свои собственные JRE и JVM, которые будут работать только на ней и ни на какой другой. Таким образом, вы должны быть внимательны при загрузке конкретной JRE для вашей ОС. Каждая версия JRE всегда будет содержать свою дополнительную JVM, поэтому нет сомнений в том, что неправильно выбрана JVM..
Резюме:
1.JVM - только одна часть JRE
2.JRE содержит классы пакетов Java помимо JVM