Heim Java javaLernprogramm Detaillierte Einführung in JDK, JVM und JRE in einer Java-Umgebung

Detaillierte Einführung in JDK, JVM und JRE in einer Java-Umgebung

Jan 23, 2017 pm 04:05 PM

JDK, JVM, JRE in der Java-Umgebung

Ich habe Android in letzter Zeit unterschätzt und mir sind eine Reihe von Konzepten wie JDK, JVM, JRE, SDK, NDK und ADT in den Sinn gekommen. Nach einer Weile sind JDK, JVM und JRE Dinge für die Java-Umgebung, während SDK, NDK und ADT Dinge sind, die für die Android-Entwicklung verwendet werden. Unterscheiden wir zwischen JDK, JVM und JRE.

Tipps: Nachdem Sie Java auf den Mac heruntergeladen haben, wo ist es? Sehen Sie sich das Bild unten an

Detaillierte Einführung in JDK, JVM und JRE in einer Java-Umgebung

Lassen Sie uns zunächst über JDK sprechen

 JDK (Java Development Kit) ist ein Software Development Kit (SDK) für die Java-Sprache.

JDK ist der Kern des gesamten JAVA, einschließlich der Java Runtime Environment (Java Runtime Envirnment), einer Reihe von Java-Tools (javac/java/jdb usw.) und der grundlegenden Java-Klassenbibliothek (d. h. Java API).

Es gibt die folgenden drei Versionen:

SE (J2SE), Standard Edition, Standard Edition, ist die Version, die wir normalerweise verwenden. Ab JDK 5.0 wurde sie in Java SE umbenannt.

EE (J2EE), Enterprise Edition, Enterprise Edition, verwenden Sie dieses JDK zum Entwickeln von J2EE-Anwendungen. Ab JDK 5.0 wurde es in Java EE umbenannt.

ME (J2ME), Micro Edition, wird hauptsächlich für Java-Anwendungen auf mobilen Geräten und eingebetteten Geräten verwendet. Ab JDK 5.0 wurde es in Java ME umbenannt.

Lassen Sie uns über JRE sprechen

JRE ist die Abkürzung für Java Runtime Environment (einschließlich Java Plug-in) ist ein Produkt von Sun und besteht aus zwei Teilen: Java Runtime Environment und Java-Plug-in. Java Runtime Environment (JRE) ist eine Java-Plattform, auf der Anwendungen ausgeführt, getestet und bereitgestellt werden können. Es umfasst eine Java Virtual Machine (JVM), eine Java-Kernklassenbibliothek und unterstützende Dateien. Es enthält keine Entwicklungstools (JDK) – Compiler, Debugger und andere Tools. JRE benötigt Hilfssoftware – das Java Plug-in – um Applets im Browser auszuführen.

Ohne JDK können Java-Programme nicht kompiliert werden, aber Programme können auf Systemen mit einer JRE-Umgebung ausgeführt werden. Wenn Sie also nur ein Java-Programm oder Applet ausführen müssen, laden Sie die JRE herunter und installieren Sie sie. Wenn Sie selbst Java-Software entwickeln möchten, laden Sie bitte JDK herunter.

Lassen Sie uns zum Schluss etwas über JVM lernen.

JVM ist eine Spezifikation für Computergeräte. Sie wird durch die Simulation verschiedener Computerfunktionen erreicht ein echter Computer.
Ein sehr wichtiges Merkmal der Java-Sprache ist ihre Unabhängigkeit von der Plattform. Die Verwendung einer Java Virtual Machine ist der Schlüssel zum Erreichen dieser Funktion. Will eine allgemeine Hochsprache auf verschiedenen Plattformen laufen, muss sie zumindest in unterschiedliche Zielcodes kompiliert werden. Nach der Einführung der virtuellen Maschine der Java-Sprache muss die Java-Sprache nicht neu kompiliert werden, wenn sie auf verschiedenen Plattformen ausgeführt wird. Die Java-Sprache verwendet die Java Virtual Machine, um Informationen zu bestimmten Plattformen abzuschirmen, sodass der Java-Sprachcompiler nur den Zielcode (Bytecode) generieren muss, der auf der Java Virtual Machine ausgeführt wird, und er ohne Änderung auf mehreren Plattformen ausgeführt werden kann. . Wenn die Java Virtual Machine Bytecode ausführt, interpretiert sie den Bytecode in Maschinenanweisungen zur Ausführung auf der spezifischen Plattform. Aus diesem Grund kann Java „einmal kompilieren und überall ausführen“.

Dies ist das Beziehungsdiagramm zwischen den drei:

Detaillierte Einführung in JDK, JVM und JRE in einer Java-Umgebung

Die tatsächliche Situation unserer Entwicklung ist: Wir verwenden JDK (Aufruf der JAVA-API). Nach der Entwicklung unseres eigenen JAVA-Programms werden unsere Text-Java-Dateien über den Compiler (javac) im JDK in JAVA-Bytecodes kompiliert, und diese JAVA-Bytecodes werden auf dem JRE ausgeführt. Die JVM analysiert diese Bytecodes und ordnet sie den CPU-Anweisungen zu oder Betriebssystemaufruf.

JVM (Java Virtual Machine), also Java Virtual Machine

JVM schirmt Informationen ab, die sich auf die spezifische Betriebssystemplattform beziehen, sodass Java-Programme nur Zielcode generieren müssen, der auf der ausgeführt wird Java Virtual Machine (Bytecode), kann ohne Änderung auf mehreren Plattformen ausgeführt werden. Wenn die JVM Bytecode ausführt, interpretiert sie letztendlich den Bytecode in Maschinenanweisungen zur Ausführung auf der spezifischen Plattform. Das Kompilieren des Befehlssatzes einer virtuellen Maschine ist dem Kompilieren des Befehlssatzes eines Mikroprozessors sehr ähnlich.

JVM ist die Grundlage der plattformübergreifenden Java-Sprache (die „Plattform“ bezieht sich hier auf verschiedene Betriebssysteme. Wenn Sie Java-Programme auf verschiedenen Betriebssystemen ausführen möchten, müssen Sie die entsprechende Software auf verschiedenen installieren). Betriebssysteme. Daher verfügt JVM über eine Windows-Version, eine MAC-Version, eine Linux-Version usw.

JRE (Java Runtime Environment), also Java-Laufzeitumgebung

JRE umfasst die Java Virtual Machine und die für Java-Programme erforderlichen Kernklassenbibliotheken. Wenn Sie ein entwickeltes Java-Programm ausführen möchten, müssen Sie lediglich JRE auf Ihrem Computer installieren.

Zusammenfassung: JRE=JVM+Java-Klassenbibliothek

JDK (Java Development Kit), also Java Development Kit

JDK wird für Java-Entwickler bereitgestellt, einschließlich JRE und einigen Java-Entwicklungstools wie Kompilierungstools (javac.exe), Verpackungstools (jar.exe) usw. Nach der Installation des JDK ist es also nicht erforderlich, JRE zu installieren. Als Lernende der Java-Sprache müssen wir JDK installieren. Ohne JDK haben wir keine Möglichkeit, Java-Code zu kompilieren und auszuführen. Aus diesem Grund empfehlen wir die Installation von JDK.

Zusammenfassung: JDK=JRE+Java-Entwicklungstools

Vielen Dank fürs Lesen, ich hoffe, es kann allen helfen, vielen Dank für Ihre Unterstützung dieser Website!

Ausführlichere Einführungen in JDK, JVM und JRE in der Java-Umgebung finden Sie auf der chinesischen PHP-Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Top 4 JavaScript -Frameworks in 2025: React, Angular, Vue, Svelte Top 4 JavaScript -Frameworks in 2025: React, Angular, Vue, Svelte Mar 07, 2025 pm 06:09 PM

Dieser Artikel analysiert 2025 die vier besten JavaScript -Frameworks (React, Angular, Vue, Svelte) und verglichen ihre Leistung, Skalierbarkeit und Zukunftsaussichten. Während alle aufgrund starker Gemeinschaften und Ökosysteme dominant bleiben, sind ihr relatives Popul

Spring Boot Snakeyaml 2.0 CVE-2022-1471 Problem behoben Spring Boot Snakeyaml 2.0 CVE-2022-1471 Problem behoben Mar 07, 2025 pm 05:52 PM

Dieser Artikel befasst sich mit der Verwundbarkeit von CVE-2022-1471 in Snakeyaml, einem kritischen Fehler, der die Ausführung von Remote-Code ermöglicht. Es wird beschrieben

Wie funktioniert der Klassenladungsmechanismus von Java, einschließlich verschiedener Klassenloader und deren Delegationsmodelle? Wie funktioniert der Klassenladungsmechanismus von Java, einschließlich verschiedener Klassenloader und deren Delegationsmodelle? Mar 17, 2025 pm 05:35 PM

Mit der Klassenbelastung von Java wird das Laden, Verknüpfen und Initialisieren von Klassen mithilfe eines hierarchischen Systems mit Bootstrap-, Erweiterungs- und Anwendungsklassenloadern umfasst. Das übergeordnete Delegationsmodell stellt sicher

Wie implementiere ich mehrstufige Caching in Java-Anwendungen mit Bibliotheken wie Koffein oder Guava-Cache? Wie implementiere ich mehrstufige Caching in Java-Anwendungen mit Bibliotheken wie Koffein oder Guava-Cache? Mar 17, 2025 pm 05:44 PM

In dem Artikel wird in der Implementierung von mehrstufigem Caching in Java mithilfe von Koffein- und Guava-Cache zur Verbesserung der Anwendungsleistung erläutert. Es deckt die Einrichtungs-, Integrations- und Leistungsvorteile sowie die Bestrafung des Konfigurations- und Räumungsrichtlinienmanagements ab

Node.js 20: wichtige Leistungssteigerung und neue Funktionen Node.js 20: wichtige Leistungssteigerung und neue Funktionen Mar 07, 2025 pm 06:12 PM

Node.js 20 verbessert die Leistung durch V8 -Motorverbesserungen erheblich, insbesondere durch schnellere Müllsammlung und E/A. Zu den neuen Funktionen gehören eine bessere Support von WebAssembly und raffinierte Debugging -Tools, die Produktivität der Entwickler und die Anwendungsgeschwindigkeit.

ICEBERG: Die Zukunft von Data Lake Tabellen ICEBERG: Die Zukunft von Data Lake Tabellen Mar 07, 2025 pm 06:31 PM

Iceberg, ein offenes Tabellenformat für große analytische Datensätze, verbessert die Leistung und Skalierbarkeit von Data Lake. Es befasst sich mit Einschränkungen von Parquet/ORC durch internes Metadatenmanagement und ermöglicht eine effiziente Schemaentwicklung, Zeitreisen, gleichzeitiger W

So teilen Sie Daten zwischen Schritten in der Gurke So teilen Sie Daten zwischen Schritten in der Gurke Mar 07, 2025 pm 05:55 PM

In diesem Artikel werden Methoden zum Austausch von Daten zwischen Gurkenschritten und dem Vergleich des Szenario -Kontextes, globalen Variablen, Argumentenübergabe und Datenstrukturen untersucht. Es betont Best Practices für Wartbarkeit, einschließlich präziser Kontextgebrauch, beschreibend

Wie kann ich funktionale Programmierungstechniken in Java implementieren? Wie kann ich funktionale Programmierungstechniken in Java implementieren? Mar 11, 2025 pm 05:51 PM

In diesem Artikel wird die Integration der funktionalen Programmierung in Java unter Verwendung von Lambda -Ausdrücken, Streams -API, Methodenreferenzen und optional untersucht. Es zeigt Vorteile wie eine verbesserte Lesbarkeit der Code und die Wartbarkeit durch SUKTIVE UND VERUSNAHMETALITÄT

See all articles