Разлика между JVM и JRE

JVM срещу JRE

Java е език за програмиране на високо ниво, който е уникален по начина, по който програмите, написани на него, могат да бъдат изпълнявани на почти всяка платформа. Но преди да можете да стартирате програмата на компютър, трябва да инсталирате определен софтуер; някои хора го наричат ​​JVM, докато други използват JRE. Въпреки че повечето хора имат предвид едно и също нещо, съществуват определени разлики между JVM и JRE. JVM всъщност е приложение, което е част от JRE. За да стартирате приложение, се нуждаете от JRE, който съдържа JVM.

JVM означава Java Virtual Machine и създава виртуален компютър, който разбира кода, с който са написани 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