Was ist der Unterschied zwischen “JDK”, “JRE” und “JVM”? Wie spielen diese zusammen?

Das JDK (Java Development Kit) ist eine Sammlung von Programmierwerkzeugen und Programmbibliotheken zur Entwicklung von Software. Das JDK enthält einen Compiler, der den von dir geschriebenen Code in Bytecode für die virtuelle Maschine übersetzt. Die Programmbibliothek (Java-Klassenbibliothek) enthält Klassen für mathematische Funktionen, Datei-Zugriff, Datenstrukturen, graphische Benutzeroberflächen und vieles mehr. Die Klassen der Bibliothek kannst du in dein Programm einbinden (import) und verwenden.

Das JRE (Java Runtime Environment) enthält unter anderem die Programmbibliothek und die virtuelle Maschine (JVM).

Die JVM (Java Virtual Machine) wandelt den vom Compiler erzeugten Bytecode in Maschineninstruktionen für das jeweilige Zielsystem um und führt den Maschinencode aus.

Mehr dazu findest du im Artikel “Wie wird aus einem Java-Code ein fertiges Programm?” in unserer FAQ.