[Java] Fluss vom Quellcode zur Ausführung

Fluss vom Quellcode zur Ausführung

  1. Quellcode erstellen
  2. Kompilieren
  3. Führen Sie aus

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:

1. Quellcode erstellen → 2. Kompilieren

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:

english_kaiwa_bad_man.png

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:

おじさんわらう.png

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:

2. Kompilieren → 3. Ausführen

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:

おじさんてへぺろ.png

In diesem Fall brauche ich jemanden, der den Dialekt dieses Onkels in eine Standardsprache übersetzen kann. das ist···

おんなわらう.png

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

[Java] Fluss vom Quellcode zur Ausführung
Änderungen von Java 8 zu Java 11
Summe von Java_1 bis 100
Eval Java-Quelle von Java
Von Java zu Ruby !!
Migration von Cobol nach JAVA
Neue Funktionen von Java7 bis Java8
Stellen Sie eine Verbindung von Java zu PostgreSQL her
Von ineffektivem Java zu effektivem Java
So kehren Sie die Kompilierung der Apk-Datei in Java-Quellcode mit MAC um
Code Java von Emacs mit Eclim
Java soll ab heute dabei sein
Von Java zu VB.NET-Writing Kontrastmemo-
Java-Quellcode zum Lesen der Klasse java.lang.Math
Java, Schnittstelle für Anfänger
Wechseln Sie von Eclipse zu VS Code
Der Weg von JavaScript nach Java
[Android] Konvertieren Sie Android Java-Code in Kotlin
[Java] Konvertierung von Array zu Liste
Beispielcode mit Minio aus Java
Grundstruktur des Java-Quellcodes
Installieren Sie samba4 aus dem Quellcode unter CentOS8
[JAWS-UG CLI] CodeBuild: # 1 Erstellen von Quellcode (Java)
So rufen Sie Swift 5.3-Code von Objective-C auf
[Java] So messen Sie die Programmausführungszeit
Stellen Sie mit Eclipse eine Verbindung von Java zu MySQL her
Von der Installation von Eclipse bis zur Ausführung von Java (PHP)
Post to Slack von Play Framework 2.8 (Java)
Java: So senden Sie Werte von Servlet zu Servlet
Einführung in die Überwachung von Java Touching Prometheus
Vorsichtsmaßnahmen bei der Migration von VB6.0 auf JAVA
Memo für die Migration von Java nach Kotlin
Führen Sie Java-Code von cpp auf cocos2dx aus
Typkonvertierung vom Java Big Decimal-Typ zum String-Typ
[Java] Ablauf von der Einführung von STS bis zur Bestätigung der dynamischen Seite auf dem lokalen Host (2/3)
[Java] Ablauf von der Einführung von STS bis zur Bestätigung der dynamischen Seite auf dem lokalen Host (1/3)
[Rspec] Ablauf von der Einführung von Rspec bis zum Schreiben von Unit-Test-Code für das Modell
Generieren Sie den Quellcode aus der JAR-Datei mit der JD-GUI des Java Decompiler-Projekts
Was ist CHECKSTYLE: OFF in der Java-Quelle? Checkstyle zu wissen von
[Java] Von zwei Listen zu einer Array-Liste
Upsert von Java SDK zu Azure Cosmos DB
Führen Sie Java-Code skriptweise aus
Stellen Sie über eine Java-Anwendung eine Verbindung zu Aurora (MySQL) her
Um ein VB.net-Programmierer aus einem Java-Shop zu werden
Java-Beispielcode 02
Code zum Escapezeichen von JSON-Zeichenfolgen in Java
Java-Beispielcode 03
Migrieren Sie von Java zu Server Side Kotlin + Spring-Boot
[Java] Konvertieren Sie DB-Code mit enum in einen Codewert
So erhalten Sie eine Klasse von Element in Java
Java-Beispielcode 04
[Java] Einführung in Java
Ich möchte schnell von Java nach SQLite schreiben
Einführung in Java
Java-Beispielcode 01
Java-Zeichencode
Bereinigen Sie findViewById aus dem Quellcode mit DataBindingLibrary
Minecraft BE Serverentwicklung von PHP nach Java
[Java] Memo zum Schreiben der Quelle
Was ist ... (3 Punkte) in der Java-Quelle gefunden? Argument mit variabler Länge, von dem man wissen muss