Warum ist die Java-Sprachplattform unabhängig?
Warum soll die Java-Sprache plattformunabhängig sein?
1. Plattform- und Maschinenanweisungen
Unabhängig davon, in welcher Programmiersprache eine Anwendung geschrieben ist, muss sie zur Fertigstellung das Betriebssystem und den Prozessor durchlaufen Daher besteht die Plattform hier aus Betriebssystem und CPU. Die sogenannte Plattformunabhängigkeit bedeutet, dass die Software aufgrund von Änderungen im Betriebssystem und Prozessor nicht ausfällt.
Jede Plattform verfügt über ihre eigenen einzigartigen Maschinenanweisungen. Die sogenannten Maschinenanweisungen einer Plattform sind ein Sequenzcode aus Nullen und Einsen, der von der Plattform direkt erkannt und ausgeführt werden kann. Die Maschinenanweisungen von Plattformen, die von derselben CPU und unterschiedlichen Betriebssystemen gebildet werden, können unterschiedlich sein
Empfohlenes Tutorial: „Java-Lernen“
2. Was ist plattformbezogen?
C/C++-Programme sind plattformabhängig: Die spezifische Plattform, auf der sich das C/C++-Quellprogramm befindet, kompiliert und verknüpft seine Quelldateien und generiert Maschinenanweisungen, d. h. sie generiert ausführbare Dateien basierend auf der Maschine Anweisungen der aktuellen Plattformdatei, sodass diese ausführbare Datei auf jeder Plattform ausgeführt werden kann, die mit der aktuellen Plattform identisch ist. Es gibt jedoch keine Garantie dafür, dass die vom C/C++-Quellprogramm generierten ausführbaren Dateien auf allen Plattformen korrekt ausgeführt werden können, da verschiedene Plattformen möglicherweise unterschiedliche Maschinenanweisungen haben. Sobald die Plattform geändert wird, muss daher möglicherweise das Quellprogramm geändert und für die neue Plattform neu kompiliert werden, was plattformabhängig ist.
Der Hauptgrund, warum C/C++-Programme nicht plattformübergreifend sein können, besteht darin, dass der Compiler des C/C++-Quellprogramms für die Plattform kompiliert und verschiedene Plattformen unterschiedliche Maschinenanweisungen haben, sodass es nicht plattformübergreifend sein kann .
3. Warum Java plattformübergreifend sein kann
Der Grund, warum C/C++ nicht plattformübergreifend sein kann, liegt darin, dass das C/C++-Quellprogramm für die kompiliert wird Die Plattform ist also nicht eng mit der Plattform verbunden. Wenn es eine solche Umgebung gibt: Sie ist sowohl abwärtskompatibel (kompatibel mit der Plattform) als auch aufwärtskompatibel (das Programm kann ausgeführt werden), wäre sie dann nicht plattformübergreifend? Basierend auf diesem Prinzip stellt Java eine Java-Laufumgebung – JRE (Installation von JDK) auf dem Betriebssystem des Computers bereit.
JRE besteht aus einer Java Virtual Machine, Klassenbibliotheken und einigen Kerndateien. Das heißt, solange die Plattform eine Java-Laufumgebung bereitstellt, kann in Java geschriebene Software darauf ausgeführt werden.
Im Gegensatz zu C/C++ programmiert der von der Java-Sprache bereitgestellte Compiler nicht für ein bestimmtes Betriebssystem und einen bestimmten CPU-Chip, sondern kompiliert das Java-Quellprogramm in einen sogenannten Bytecode für die Java Virtual Machine Code“ ist die Java Virtual Machine dann dafür verantwortlich, den Bytecode in den Maschinencode der Plattform zu übersetzen, auf der sich die virtuelle Maschine befindet, und die aktuelle Plattform den Maschinencode ausführen zu lassen.
Das Funktionsprinzip der Java-Sprache:
Die auf einem Computer kompilierte Bytecode-Datei (d. h. die .class-Datei) kann direkt auf jeden Computer kopiert werden, auf dem die Java-Laufzeitumgebung installiert ist. laufen. Die Bytecode-Datei wird dann von der virtuellen Maschine interpretiert und ausgeführt. Das heißt, die Java Virtual Machine übersetzt den Bytecode in den Maschinencode des lokalen Computers und übergibt den Maschinencode dann zur Ausführung an das lokale Betriebssystem.
Da die auf einem Computer kompilierte Bytecode-Datei auf jeden Computer mit installierter Java-Laufzeitumgebung kopiert und direkt verwendet werden kann, handelt es sich bei dem Bytecode tatsächlich um eine Art „Zwischencode“, weshalb „Java-Sprache“ sein kann Einmal kompiliert und überall ausgeführt, deshalb ist Java plattformübergreifend. Daher wird Java als „halbkompilierte, halbinterpretierte Sprache“ bezeichnet, d ——>Maschinensprache entsprechend der Plattform. ”
Das obige ist der detaillierte Inhalt vonWarum ist die Java-Sprachplattform unabhängig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Leitfaden zur Quadratwurzel in Java. Hier diskutieren wir anhand eines Beispiels und seiner Code-Implementierung, wie Quadratwurzel in Java funktioniert.

Leitfaden zur perfekten Zahl in Java. Hier besprechen wir die Definition, Wie prüft man die perfekte Zahl in Java?, Beispiele mit Code-Implementierung.

Leitfaden zum Zufallszahlengenerator in Java. Hier besprechen wir Funktionen in Java anhand von Beispielen und zwei verschiedene Generatoren anhand ihrer Beispiele.

Leitfaden zur Armstrong-Zahl in Java. Hier besprechen wir eine Einführung in die Armstrong-Zahl in Java zusammen mit einem Teil des Codes.

Leitfaden für Weka in Java. Hier besprechen wir die Einführung, die Verwendung von Weka Java, die Art der Plattform und die Vorteile anhand von Beispielen.

Leitfaden zur Smith-Zahl in Java. Hier besprechen wir die Definition: Wie überprüft man die Smith-Nummer in Java? Beispiel mit Code-Implementierung.

In diesem Artikel haben wir die am häufigsten gestellten Fragen zu Java Spring-Interviews mit ihren detaillierten Antworten zusammengestellt. Damit Sie das Interview knacken können.

Java 8 führt die Stream -API ein und bietet eine leistungsstarke und ausdrucksstarke Möglichkeit, Datensammlungen zu verarbeiten. Eine häufige Frage bei der Verwendung von Stream lautet jedoch: Wie kann man von einem Foreach -Betrieb brechen oder zurückkehren? Herkömmliche Schleifen ermöglichen eine frühzeitige Unterbrechung oder Rückkehr, aber die Stream's foreach -Methode unterstützt diese Methode nicht direkt. In diesem Artikel werden die Gründe erläutert und alternative Methoden zur Implementierung vorzeitiger Beendigung in Strahlverarbeitungssystemen erforscht. Weitere Lektüre: Java Stream API -Verbesserungen Stream foreach verstehen Die Foreach -Methode ist ein Terminalbetrieb, der einen Vorgang für jedes Element im Stream ausführt. Seine Designabsicht ist
