Ich weiß, dass Java-Code in Byte-Code kompiliert wird, der von der JVM ausgeführt wird.
Was ist mit C #? Ich habe bemerkt, dass in C # geschriebene Anwendungen die Erweiterung .exe
haben, was nahelegt, dass es sich um native Maschinenbefehle handelt. aber ist es wirklich so?
Nein.
Wie bei Java wird C # in eine Zwischensprache (MSIL oder CIL) kompiliert.
Im Gegensatz zu Java wird die IL in EXE-Dateien gespeichert, die über genügend tatsächlichen EXE-Code verfügen, um ein Dialogfeld anzuzeigen, in dem Benutzer aufgefordert werden, .Net zu installieren.
Was diese .exe Ihnen sagen soll, ist, dass die Datei ausführbar ist. C # wird wie Java in Bytecode kompiliert, aber .NET fügt dieses in eine ausführbare CLR-Datei ein.
Hier finden Sie einen ausführlicheren Einblick in die ausführbare CLR-Datei Ссылка
C # erfolgt in diesen zwei Schritten:
%Vor%Eine Komponente (just in time) führt diese Kompilierung zur Laufzeit von CIL zum Maschinencode
durchC # -Code wird nach MSIL kompiliert, MSIL wird von .NET CLR
übernommenTags und Links compilation c# bytecode