Différence entre .java et .class
- Les bases de l’écriture d’un programme en Java
-
le fichier
.java
en Java -
le fichier
.class
en Java -
Les différences entre les fichiers
.java
et.class
- Conclusion
Java est un langage de programmation indépendant de la plate-forme. Cela implique un processus d’exécution en deux étapes au lieu de la compilation habituelle en une étape comme le langage C.
L’exécution de la première étape s’effectue à l’aide d’un compilateur, indépendant du système d’exploitation. L’exécution de la deuxième étape se fait à l’aide d’une machine virtuelle, également appelée JVM ou Java Virtual Machine.
Lors de l’exécution en deux étapes, les fichiers avec l’extension .java
et .class
se forment. Cet article examinera la différence fondamentale entre les fichiers .java
et .class
.
Les bases de l’écriture d’un programme en Java
Pour comprendre le concept de fichiers .java
et .class
, il faut savoir comment fonctionne un programme Java. Prenons le code suivant à titre d’exemple.
public class DemoProgram {
/* This is a demo Java program that will print 'Hello Java' as the output */
public static void main(String[] args) {
System.out.println("Hello Java");
}
}
Suivez ces étapes pour exécuter ce programme.
-
Écrivez le code ci-dessus dans un éditeur de texte. Ensuite, enregistrez le fichier sous
DemoProgram.java
. Notez que le nom du fichier doit être le même que le nom de la classe. -
Ouvrez la fenêtre d’invite de commande avec le chemin d’accès au répertoire où vous avez enregistré ce fichier.
-
Tapez cette commande -
javac DemoProgram.java
. Appuyez sur la touche Entrée. La commandejavac
compile un programme Java. Il prend un fichier.java
en entrée et le transforme en un fichier de bytecode. Cette étape démarre la compilation du code. Le curseur passe à la ligne suivante une fois la compilation réussie sans erreur.C :\Users\PC > javac DemoProgram.java
-
Ensuite, tapez cette commande -
java DemoJava
. Nous n’utilisons pas.java
avec le nom de fichier ici. La raison en est que la commandejava
prend le code d’octet en entrée et donne la sortie finale selon le code source. Pour faire simple, cette fois,DemoProgram
n’est pas un fichier java mais un bytecode.C :\Users\PC > java DemoProgram
-
La commande ci-dessus exécute le programme et vous pouvez voir la sortie comme :
Hello Java
Avant d’aller plus loin, notez les points suivants :
-
Le code source est le code qu’un programmeur écrit dans n’importe quel langage de programmation. Nous l’écrivons manuellement pour résoudre tout problème.
-
En Java, chaque programme constitue une
classe
. Il peut y avoir plus d’une classe dans un même programme selon le but de l’écriture du code. Comme dans l’exemple ci-dessus, il n’y a qu’une seule classe appeléeDemoProgram
.
Nous créons un fichier texte dans la section ci-dessus et l’enregistrons avec l’extension .java
. C’est le fichier source qui passe par le compilateur.
Cela encode le code source dans un encodage indépendant de la machine. Ceci est appelé Bytecode
.
Comme mentionné précédemment, un programme peut avoir une ou plusieurs classes. Ainsi lors de l’encodage, le contenu de chaque classe va séparément dans un fichier .class
différent.
Ensuite, ces fichiers peuvent ensuite s’exécuter sur n’importe quel système car ils sont indépendants de la machine ou du système d’exploitation.
Avez-vous vu quand les fichiers .java
et .class
sont entrés en scène ? Le fichier .java
se forme lorsque nous enregistrons un code source avec cette extension. Le fichier .class
se forme lors de la compilation.
le fichier .java
en Java
Le fichier .java
n’est rien d’autre que le code source lui-même en Java.
En termes simples, c’est le fichier contenant le code que nous écrivons. Nous pouvons utiliser un simple éditeur de texte ou n’importe quel IDE pour écrire un programme Java.
Quoi que nous utilisions, nous sauvegardons le programme ou le code source que nous avons écrit. Pour enregistrer un fichier de code source Java, nous utilisons l’extension .java
.
Chaque langue a une convention différente d’enregistrement du fichier de code source. Comme dans le langage C, le fichier de code source porte l’extension .c
; en python, c’est .py
, et en C++, on utilise .cpp
.
le fichier .class
en Java
Le fichier .class
est le fichier qui contient le byte code d’une classe dans le code source. Ce fichier est formé lors de la compilation.
Lorsque nous avons mentionné que Java est un langage indépendant de la plate-forme, c’est à cause de ces fichiers de classe. Ces fichiers peuvent fonctionner sur n’importe quel système d’exploitation ou machine.
Un fichier .class
peut être considéré comme un fichier .java
compilé. C’est le fichier qui s’exécute sur la JVM (Java Virtual Machine).
Le nombre de fichiers .class
n’est pas forcément égal à un. Il est égal au nombre de classes d’un code source car chaque classe va dans un fichier .class
différent après compilation.
Exemple 1:
public class DemoProgram {
/* This is a demo Java program that will print 'Hello Java' as the output */
public static void main(String[] args) {
System.out.println("Hello Java");
}
}
Production :
C:\Users\PC>javac DemoProgram.java
C:\Users\PC>java DemoProgram
Hello Java
Dans ce code, il n’y a qu’une seule classe, DemoProgram
. Ainsi, nous n’obtenons qu’un seul fichier .class
, DemoProgram
, du fait de la compilation.
Maintenant, regardons un autre exemple.
Exemple 2 :
// A class
class TestCase {
public static void main(String[] args) {
System.out.println("An example with multiple classes.");
}
}
// Another class
class Demo {
public static void main(String[] args) {
System.out.println("This is an example.");
}
}
// One more class
class Example {
public static void main(String[] args) {
System.out.println("It contains three classes.");
}
}
Compilez le fichier :
C :\Users\PC > javac Example.java
Après compilation, on obtient non pas un mais trois fichiers .class
en sortie. Ainsi, vous pouvez voir qu’il y a autant de fichiers .class
que de classes dans le code source.
Nous pouvons exécuter chaque fichier .class séparément comme suit :
C :\Users\PC > java TestCase An example with multiple classes.
C :\Users\PC
> java Demo This is an example.
C :\Users\PC
> java Example It contains three classes.
Les différences entre les fichiers .java
et .class
La différence entre ces deux types de fichiers est résumée dans le tableau suivant.
Fichier .java |
Fichier .class |
---|---|
Il contient le code source Java. | Il contient le code Java Byte. |
Un programmeur ou un individu l’écrit. | Il se forme à la suite de la compilation d’un fichier .java . |
Il est lisible par l’homme. | Il est utilisé dans JVM pour l’exécution du programme. |
Il se forme avant un fichier .class . Sans cela, un fichier de classe ne peut pas être formé. |
Il se forme toujours après un fichier .java . |
Nous pouvons écrire ceci sur n’importe quel éditeur de texte ou Java IDE. | Nous pouvons l’exécuter sur n’importe quel système d’exploitation ou machine. |
Conclusion
Cet article nous a appris la principale différence entre un fichier .java
et un fichier .class
. Nous avons également vu comment un programme Java s’exécute au niveau de la machine et de l’utilisateur.
Ce concept est à la base de la programmation Java, et il est important de le comprendre pour exécuter efficacement les programmes et applications Java.
Article connexe - Java File
- Comment supprimer les sauts de ligne d'un fichier en Java
- Fermer un fichier en Java
- Déplacer le fichier du répertoire actuel vers un nouveau répertoire en Java
- Sélecteur de fichiers en Java
- Créer un fichier s'il n'existe pas en Java
- Lire le fichier à partir des ressources en Java