JVM versus JRE
Java is een platformonafhankelijke programmeertaal. Het houdt zich ook aan het principe "schrijf eens, overal doorheen". Het programma geschreven in Java kan worden gecompileerd in Java bytecode door de Java-compiler. De bytecode kan vervolgens worden uitgevoerd op elk platform waarop de JRE (Java Runtime Environment) wordt uitgevoerd. JRE omvat de JVM (Java Virtual Machine), basisbibliotheken (waarmee de Java API wordt geïmplementeerd) en andere ondersteunende bestanden. JVM is een abstracte computer die fungeert als bemiddelaar tussen de platformspecifieke JRE en de Java-code.
Wat is JVM?
JVM is een type virtuele machine die door machines wordt gebruikt om Java-bytecode uit te voeren. Volgens Sun Microsystems (die Java heeft ontwikkeld tot het zeer recent door Oracle werd gekocht), zijn er meer dan 4 miljard JVM-apparaten in de wereld. Meer specifiek is Java Virtual Machine een abstracte computer die geïmplementeerd is op standaard hardware en besturingssysteem. Een van de belangrijke functies van de JVM is geautomatiseerde uitzonderingsafhandeling. Typisch, een verzameling standaardbibliotheken vergezelt de JVM. JRE is feitelijk een bundel met de JVM en de klassen die de Java API implementeren. JVM is een zeer belangrijke component, die de "compile once, run anywhere" aard van de programmeertaal Java herbergt. Zolang de JVM actief is, kan uw Java-code er bovenop worden uitgevoerd, ongeacht het platform dat in de machine wordt gebruikt. Daarom wordt Java een platformonafhankelijke taal of taal met meerdere platforms genoemd.
Wat is JRE?
JRE is de uitvoeringsomgeving waarop Java-code wordt uitgevoerd. Doorgaans bestaat JRE uit de JVM, standaard basisklassen (die de basis-Java-API implementeren) en andere ondersteunende bestanden. Type en structuur van JRE variëren afhankelijk van het besturingssysteem en de CPU-architectuur. Wanneer de Java-code wordt uitgevoerd, communiceert de JRE met het besturingssysteem, dat op zijn beurt met de overeenkomstige hardwarecomponenten spreekt. JRE op uw systeem laten installeren is een vereiste om elke Java-code op uw computer uit te voeren. JRE bevat echter geen compiler, debugger of andere tools die nodig zijn voor de ontwikkeling van Java-programma's (zoals appletviewer en javac). Als u programma's in Java moet ontwikkelen, moet u beschikken over de JDK (Java Development Kit), die ook de JRE omvat.
Wat is het verschil tussen en JVM en JRE?
Hoewel in het dagelijks gebruik de termen JVM en JRE door elkaar worden gebruikt, hebben ze hun verschillen. JVM is een virtuele machine die bovenop het besturingssysteem wordt uitgevoerd, terwijl JRE de runtime-uitvoeringsomgeving is. JVM maakt deel uit van de JRE. JVM-specificatie fungeert als de koppeling tussen de platformspecifieke JRE-implementatie en de standaard Java-bibliotheken. Daarom is JVM de entiteit die de abstractie biedt van de interne implementatiedetails naar de programmeur. En het is verantwoordelijk voor het interpreteren van de gecompileerde bytecode. JVM heeft echter de basisbibliotheken en andere ondersteunende bestanden nodig om de java-bytecode uit te voeren. Maar soms wordt JRE eenvoudigweg geïdentificeerd als een implementatie van JVM.