Різниця між JVM та JRE

JVM проти JRE

Java - мова програмування високого рівня, унікальна тим, що програми, написані на ній, можуть виконуватися майже на будь-якій платформі. Але перш ніж запустити програму на комп’ютері, потрібно встановити певне програмне забезпечення; деякі називають це JVM, а інші використовують JRE. Хоча більшість людей посилаються на одне й те саме, є певні відмінності між JVM та JRE. JVM - це фактично додаток, який є частиною JRE. Для запуску програми вам потрібен JRE, який містить JVM.

JVM розшифровується як віртуальна машина Java, і він створює віртуальний комп'ютер, який розуміє код, в який написані програми Java. Програми Java не записуються в особливості ОС. Це надає йому можливість запускатись на будь-якій платформі, але вимагає використання JVM для перекладу команд з байт-коду Java в конкретний машинний код.

Не все, що потрібно всім програмам, міститься в рамках СП. Деякі розташовані в так званих пакунках класів. Такі пакети, як 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