Einfach ausgedrückt ist dies das Verfahren: Lächeln: Als Anfänger war es erfrischend zu sagen: Denken: Was ist Zusammenstellung ...? ?? ?? Es ist wie: heat_smile:
Ich möchte nach und nach erklären, wie es ist: smile: Ich denke es ist wahrscheinlich so Bitte weisen Sie auf Missverständnisse hin: Lächeln:
Viele Leute kennen den Quellcode, nicht wahr? Die folgenden Programme erstellen wir: smile:
Beispiel.java
public class Main {
public static void main(String[] args) {
System.out.println("hello, world!");
}
}
Nun, dieses Programm. Selbst wenn wir den Code ordentlich schreiben, kann PC-kun ihn leider nicht so verstehen, wie er ist: rollende_eyes:
Selbst wenn Sie mit einem Ausländer sprechen, der kein Japanisch auf Japanisch versteht, kann der Ausländer es nicht verstehen: heat_smile:
Also, was soll ich tun ... Ich denke, es ist einfacher, ein Bild zu bekommen, wenn Sie anthropomorphisieren: Lächeln:
Es wäre schön, wenn jemand, der die Worte des anderen versteht, hereinkommt und übersetzt: lachend:
Das Äquivalent dieses Dolmetschers ist Zusammenstellung: Lachen:
Diese Zusammenstellung hat die Funktion ** von Menschen geschriebenen Quellcode in Maschinensprache zu übersetzen **.
: Glühbirne: ** Kompilierungsfunktionen **: Glühbirne: : sunny: Konvertiert die Quelldatei in eine Klassendatei : sunny: Die konvertierte Klassendatei enthält einen sogenannten Bytecode. : sunny: Compile verwendet eine Software namens Compiler, um die oben genannten Arbeiten auszuführen. : sunny: Der Compiler überprüft auch die Grammatik des Quellcodes
Das Konvertieren einer Quelldatei in eine Klassendatei bedeutet Dateiname.java → Dateiname.Klasse Es bedeutet, die Erweiterung in zu konvertieren.
Die Erweiterung ist .Txt für Notizen .Docx für Word .Xlsx für Excel .Pdf für PDF Usw., die nach dem Dateinamen aufgeführt ist.
Kommen wir zurück zur Geschichte: Lächeln:
Und es gibt so etwas wie einen Bytecode in dem, was in eine Klassendatei konvertiert wird, aber dieser ** Bytecode ist ein komplexes Array von 0en und 1en **. Mit anderen Worten, der von uns erstellte Quellcode wird in den durch 0s und 1s gebildeten konvertiert.
Dateiname | Quelldatei | Klassendatei |
---|---|---|
Der Inhalt der Datei | Quellcode | Bytecode |
Sollte ich die Dateierweiterung korrigieren, wenn ich die Quelldatei in eine Klassendatei ändere? : Denken:
Ich denke das, aber es wird wahrscheinlich zu einem Fehler führen.
Was zu tun ist, ist die Verwendung einer Software, die als Compiler bezeichnet wird. Compiler zum Kompilieren ... verwirrend: heat_smile:
Nun, dieser Compiler. Außerdem wird die Syntax des von uns erstellten Quellcodes überprüft.
Hey, ist die englische Schreibweise nicht falsch? Hey, ist es nicht cool?
Usw. wird überprüft. Übrigens wird es nicht kompiliert, bis ich diese behoben habe. Es wird die ganze Zeit zurückgeschickt: heat_smile:
Ich ließ sie in die Wörter der Maschine übersetzen und schließlich wurde das Programm ausgeführt! : Faust: Ich denke, aber warte eine Minute! : hand_splayed :.
Tatsächlich funktioniert es bei dieser Geschwindigkeit immer noch nicht. Sie können es nicht tun, weil Sie es in Maschinensprache konvertiert haben! ?? !! ?? Ich denke. Zumindest dachte ich: heat_smile:
Im Vergleich zum Quellcode sieht es so aus, als ob es ausgeführt werden kann, aber es kann nicht ausgeführt werden.
Wenn ich es noch einmal als anthropomorph betrachte, den Zusammenstellungsonkel, der es früher übersetzt hat. Es ist schön, dass er es übersetzt hat, aber der Dialekt war zu eng und wurde nicht an die andere Partei weitergegeben ... Ich denke, es ist wie: Schweiß_smile:
In diesem Fall brauche ich jemanden, der den Dialekt dieses Onkels in eine Standardsprache übersetzen kann. das ist···
Ich bin Interpreta: Lächeln:
: Glühbirne: ** Dolmetschermerkmale **: Glühbirne: : sunny: Konvertierung und Ausführung des Bytecodes anfordern : sunny: Es hat einen Mechanismus namens JVM
Der vom Kompilierungsonkel übersetzte Bytecode wird vom Interpreter in eine Maschinensprache namens Maschinencode konvertiert.
Senden Sie diesen übersetzten Maschinencode zur Verarbeitung an die CPU. (Die CPU hat die Funktion, den Maschinencode im Gehirn des PCs zu verstehen und Anweisungen auszuführen und zu berechnen.)
** JVM soll die CPU Anweisungen ausführen lassen, während sie den Bytecode nach und nach liest. ** ** **
Zum Beispiel
Beispiel.
Wo ist hier?
Wie komme ich zum Bahnhof?
Wie lange dauert es, bis der Bahnhof erreicht ist?
Angenommen, Sie stellen die Frage. Dann ...
Wo ist hier? ↓ Übersetzung ↓ New York
Wie komme ich zum Bahnhof? ↓ Übersetzung ↓ Biegen Sie an der nächsten Ecke links ab und bleiben Sie geradeaus
Wie lange dauert es, bis der Bahnhof erreicht ist? ↓ Übersetzung ↓ Es sind ungefähr 10 Minuten.
Fühlt es sich wie ein Simultandolmetscher als Bild an? ?? Anstatt die Geschichte der anderen Person zu hören und dann zu übersetzen Es ist wie beim Dolmetschen, während man die Geschichte hört.
Java-Programme werden folgendermaßen ausgeführt: smile:
Dieser Interpreter ist übrigens neben dem Compiler auch eine der Software. Sie können Java also nicht verwenden, ohne den Compiler und den Interpreter zu installieren.
Recommended Posts