En termes simples, voici la procédure: sourire: En tant que débutant, c'était rafraîchissant de dire: penser: Qu'est-ce que la compilation ...? ?? ?? C'est comme: sweat_smile:
Je voudrais vous expliquer petit à petit ce que c'est: sourire: Je pense que c'est probablement comme ça Veuillez signaler tout malentendu: sourire:
Beaucoup de gens connaissent le code source, n'est-ce pas? Les programmes suivants que nous créons: smile:
Exemple.java
public class Main {
public static void main(String[] args) {
System.out.println("hello, world!");
}
}
Eh bien, ce programme. Malheureusement, même si nous écrivons le code proprement, PC-kun ne peut pas le comprendre tel quel: rolling_eyes:
Même si vous parlez en japonais à un étranger qui ne comprend pas le japonais, l'étranger ne peut pas le comprendre: sweat_smile:
Alors que dois-je faire ... Je pense qu'il est plus facile d'obtenir une image si vous anthropomorphisez: sourire:
Ce serait bien d'avoir quelqu'un qui comprend les mots de l'autre entre et traduise: rire:
L'équivalent de cet interprète est la compilation: rire:
Cette compilation a la fonction de ** traduire le code source écrit par l'homme en langage machine **.
: ampoule: ** Caractéristiques de compilation **: ampoule: : sunny: Convertir le fichier source en fichier de classe : sunny: le fichier de classe converti contient ce qu'on appelle un code d'octet. : sunny: Compile utilise un logiciel appelé compilateur pour effectuer le travail ci-dessus. : sunny: Le compilateur vérifie également la grammaire du code source
La conversion d'un fichier source en fichier de classe signifie Nom de fichier.java → Nom de fichier.classe Cela signifie convertir l'extension en.
L'extension est .Txt pour les notes .Docx pour Word .Xlsx pour Excel .Pdf pour PDF Etc., qui est répertorié après le nom du fichier.
Revenons à l'histoire: sourire:
Et il y a quelque chose qui s'appelle un code d'octet dans ce qui est converti en fichier de classe, mais ce ** code d'octet est un tableau complexe de 0 et de 1 **. En d'autres termes, le code source que nous avons créé est converti en celui formé par des 0 et des 1.
nom de fichier | fichier source | Fichier de classe |
---|---|---|
Le contenu du fichier | Code source | Code d'octet |
Si je change le fichier source en fichier de classe, dois-je corriger l'extension du fichier? : en pensant:
Je pense que, mais cela entraînera probablement une erreur.
Ce qu'il faut faire est d'utiliser un logiciel appelé compilateur. Compilateur pour la compilation ... déroutant: sweat_smile:
Eh bien, ce compilateur. Il vérifie également la syntaxe du code source que nous créons.
Hé, l'orthographe anglaise n'est-elle pas fausse? Hé, c'est pas cool?
Etc. sera vérifié. Au fait, il ne compilera pas tant que je n'aurai pas résolu ces problèmes. Il sera renvoyé tout le temps: sweat_smile:
Je les ai fait traduire dans les mots de la machine, et finalement le programme a été exécuté! : poing: Je pense, mais attendez une minute! : hand_splayed:.
En fait, cela ne fonctionne toujours pas à ce rythme. Vous ne pouvez pas le faire parce que vous l'avez converti en langage machine! ?? !! ?? Je pense. Au moins j'ai pensé: sweat_smile:
Comparé au code source, il semble qu'il peut être exécuté, mais il ne peut pas être exécuté.
Quand j'y repense comme anthropomorphe, l'oncle de compilation qui l'a traduit plus tôt. C'est bien qu'il l'ait traduit, mais le dialecte était trop serré pour être transmis à l'autre partie ... Je pense que c'est comme: sweat_smile:
Dans ce cas, nous avons besoin de quelqu'un qui peut traduire le dialecte de cet oncle de compilation dans une langue standard. C'est···
Je suis Interpreta: sourire:
: ampoule: ** Caractéristiques de l'interprète **: ampoule: : sunny: demande la conversion et l'exécution du bytecode : sunny: Il a un mécanisme appelé JVM
Le code d'octet traduit par l'oncle de compilation est converti par l'interpréteur en un langage machine appelé code machine.
Envoyez ce code machine traduit à la CPU pour traitement. (Le processeur a pour fonction de comprendre le code machine dans la partie cérébrale de l'ordinateur personnel et d'exécuter et de calculer des instructions.)
** JVM consiste à demander au CPU d'exécuter des instructions tout en lisant petit à petit le code d'octet. ** **
Par exemple
Exemple.
Où est Ici?
Comment vais-je à la station?
Combien de temps faut-il pour arriver à la gare?
Supposons que vous posiez la question. Alors ...
Où est Ici? ↓ Traduction ↓ New York
Comment vais-je à la station? ↓ Traduction ↓ Tourner à gauche au coin suivant et rester tout droit
Combien de temps faut-il pour arriver à la gare? ↓ Traduction ↓ C'est environ 10 minutes.
Cela ressemble-t-il à un interprète simultané en tant qu'image? ?? Au lieu d'écouter l'histoire de l'autre personne puis de traduire C'est comme interpréter tout en écoutant l'histoire.
Les programmes Java sont exécutés de cette manière: smile:
À propos, cet interpréteur est également l'un des logiciels avec le compilateur. Vous ne pouvez donc pas utiliser Java sans installer le compilateur et l'interpréteur.
Recommended Posts