Votre Premier Programme Java : Étapes Simples pour Compiler et Exécuter

Dans cette vidéo, nous allons comprendre comment fonctionne Java en coulisses.






Lorsque vous écrivez un programme en Java, tout commence par un fichier source que vous créez avec l'extension .java. Ce fichier contient votre code, écrit en langage Java. Mais pour que votre programme puisse être exécuté, il doit passer par plusieurs étapes.

Première étape : la compilation.
Java utilise un compilateur appelé javac, qui transforme votre code source en un fichier .class. Mais ce fichier ne contient pas du code directement exécutable par votre ordinateur. Il contient du bytecode, un format intermédiaire.

Mais alors, qu'est-ce que le bytecode ?
Le bytecode est une sorte de "langage universel" pour Java. Il n'est pas spécifique à un système d'exploitation, ce qui signifie qu'il ne peut pas encore être exécuté directement par votre ordinateur. C'est un code optimisé qui attend d’être interprété par un autre élément clé de Java : la JVM.

Deuxième étape : l'interprétation par la JVM.
La JVM, ou Java Virtual Machine, est un programme spécial qui prend ce bytecode et le transforme en code machine, le langage compris par votre système d’exploitation. Que vous soyez sur Windows, macOS, ou Linux, la JVM adapte le bytecode pour qu'il fonctionne sur votre machine spécifique.

C'est précisément grâce à ce mécanisme que Java est portable.
Vous écrivez votre code une seule fois, et grâce au bytecode et à la JVM, ce même programme peut être exécuté sur n’importe quel appareil ou système d'exploitation qui dispose d'une JVM. C'est ce qu'on appelle le principe du "Write Once, Run Anywhere".

En résumé, voici le processus complet :

  1. Votre fichier .java est compilé par le compilateur javac en un fichier .class, contenant du bytecode.
  2. La JVM interprète ce bytecode et le convertit en code machine pour le système d’exploitation de votre machine.

C’est ce qui fait de Java un langage puissant, portable et extrêmement populaire pour développer des applications universelles.

Maintenant, nous allons mettre en pratique ce que nous avons appris sur la compilation et l’exécution d’un programme Java, directement avec Windows PowerShell. Avant de commencer, assurez-vous que le JDK est déjà installé et correctement configuré sur votre machine. Si ce n’est pas le cas, je vous invite à regarder notre vidéo précédente où nous expliquons comment le faire."


Étape 1 : Préparer l’environnement

"Avant tout, nous allons organiser notre travail. Voici ce que vous devez faire :

  1. Créez un dossier nommé MesProgrammesJava sur votre bureau ou à l’endroit de votre choix.
  2. Dans ce dossier, vous allez créer deux fichiers texte nommés Rectangle.txt et Main.txt.
  3. Ensuite, changez leur extension de .txt à .java. Assurez-vous que l’extension est bien visible (si ce n’est pas le cas, activez l’affichage des extensions dans les paramètres de votre explorateur de fichiers)."

Étape 2 : Copier le code

"Le code des deux classes se trouve dans l’article de blog associé à cette vidéo. Vous trouverez le lien vers cet article dans la description. Copiez simplement le contenu des classes dans les fichiers que vous venez de créer :

Rectangle.java


public class Rectangle { private int largeur; private int hauteur; public Rectangle(int largeur, int hauteur) { this.largeur = largeur; this.hauteur = hauteur; } public int calculerSurface() { return largeur * hauteur; } }

Main.java


public class Main { public static void main(String[] args) { if (args.length < 2) { System.out.println("Largeur et hauteur manquantes !"); System.out.println("Usage : java Main <largeur> <hauteur>"); return; } try { int largeur = Integer.parseInt(args[0]); int hauteur = Integer.parseInt(args[1]); Rectangle rectangle = new Rectangle(largeur, hauteur); System.out.println("La surface du rectangle est : " + rectangle.calculerSurface()); } catch (NumberFormatException e) { System.out.println("Veuillez entrer des nombres valides !"); } } }

"Une fois les codes copiés, sauvegardez vos fichiers dans le dossier MesProgrammesJava."


Étape 3 : Explication des classes

"Prenons un moment pour comprendre ce que font ces deux classes :

  • Rectangle.java est une classe qui représente un rectangle. Elle a deux attributs : la largeur et la hauteur. Elle inclut un constructeur pour initialiser ces valeurs et une méthode calculerSurface() qui renvoie la surface du rectangle.

  • Main.java est la classe principale qui contient la méthode main. C’est le point d’entrée de notre programme. Le tableau String[] args est très important : il contient les arguments passés au programme lors de son exécution. Ici, on l’utilise pour récupérer la largeur et la hauteur du rectangle en les passant comme paramètres. Si ces arguments manquent, le programme affiche un message d’erreur pour guider l’utilisateur."


Étape 4 : Compilation avec PowerShell

"Maintenant, ouvrez Windows PowerShell et accédez au dossier MesProgrammesJava que vous avez créé. Voici la commande :


cd C:\Users\<VotreNom>\Desktop\MesProgrammesJava

"Ensuite, compilez les fichiers Java pour générer les fichiers .class :"


javac Rectangle.java Main.java

"Si tout est correct, vous verrez apparaître les fichiers Rectangle.class et Main.class dans le dossier."


Étape 5 : Exécution du programme

"Pour exécuter le programme, utilisez cette commande en passant deux arguments : la largeur et la hauteur :"


java Main 5 10

"Le programme calculera et affichera :"


La surface du rectangle est : 50

"Maintenant, testez la commande sans passer d’arguments :"


java Main

"Vous obtiendrez :"


Largeur et hauteur manquantes ! Usage : java Main <largeur> <hauteur>

"C’est là que l’on voit toute l’utilité du tableau String[] args. Il permet à notre programme de récupérer les paramètres nécessaires pour fonctionner et d’afficher un message d’aide si les arguments sont incorrects ou manquants."


Conclusion

"Voilà ! Vous avez appris à compiler et exécuter un programme Java en utilisant Windows PowerShell. Vous avez également compris l’utilité de String[] args dans la méthode main. Continuez à expérimenter en modifiant les valeurs et en testant d’autres scénarios. Dans la prochaine vidéo, nous explorerons les concepts avancés des classes et des objets !"

Commentaires

Posts les plus consultés de ce blog

Premier tutoriel avec Arduino et Proteus ISIS

Login et password ,formulaire d'authentification sous android avec mysql et json

Connexion d'une application Android et une base de données externe Mysql avec web services php Json (opérations CRUD)