Accueil > Programmer avec Java > Les bases de Java >
Dans les programmes que nous écrirons, nous verrons des éléments de structure entre ‘expression’ et ‘méthode main’ de façon régulière. Occasionnellement nous aurons à utiliser une classe, un package ou un framework plus explicitement. Mais cette liste couvre les éléments d’un programme Java de la plus petite à la plus grande structure possible.
;
. Ils peuvent être des déclarations de variables, des appels de méthodes ou des opérations sur les données.{}
. Pour améliorer la lisibilité du code, les blocs de code sont souvent indentés. Les outils de votre éditeur de code peuvent vous aider à indenter automatiquement le code.main
void main()
- ce que nous utiliserons dans nos programmes, mais cette signature peut se développer jusqu’à la signature complète, traditionnelle public static void main(String[] args)
. Ce cours n’expliquera pas tous les détails de la signature traditionnelle.Dans nos programmes, la classe unique sera déclarée automatiquement2 la plupart du temps, nous laissant définir les méthodes et attributs directement dans le fichier
.java
. Parfois, et de manière plus commune dans les grands projets Java, les classes sont des blocs de code déclarées avec le mot-cléclass
.
module-info.java
. Les modules sont utilisés pour organiser les packages en groupes logiques pour créer des applications modulaires, n’utilisant que les packages nécessaires pour l’application. Dans tous nos programmes, le module de notre code est implicite et ne sera pas déclaré dans le code source.À la fin de cette leçon vous devrez être en mesure de :
Voici les étapes pour produire ce programme :
Bonjour.java
- l’extension .java
est important. D’autres éléments du nom seront expliqués dans la prochaine leçon.
C’est possible que les outils de votre EDI suggèrent l’insertion d’une classe du même nom, p. ex.
public class Bonjour { }
, dès que le fichier s’ouvre dans l’éditeur. Vous devrez effacer ce code afin de maintenir la structure minimale pour ce programme.2
main
. Les deux accolades {}
représentent les limites du contenu de la méthode.
1
void main() {}
Si vos outils Java sont activés, vous devrez voir deux liens :
Run | Debug
apparaître au-dessus de la méthodemain
. Cela signifie que le compilateur Java a reconnu la méthodemain
comme le point d’entrée du programme.
Entrée
entre les deux accolades pour créer un espace pour les instructions. Vous verrez que l’accolade fermante est placée directement sous le début de la ligne void main()
tandis que le curseur est indenté vers la droite. Cela est une convention de format pour nous aider à voir que les accolades sont bien fermées pour les différents blocs de code.
1
2
3
void main() {
}
main
, soit entre ces deux accolades. Dans ce cas-ci, on inclut une seule instruction qui affiche le texte “Bonjour!” à la sortie du système (la console)
1
2
3
void main() {
System.out.println("Bonjour!");
}
Notez que l’instruction se termine avec un point-virgule
;
. C’est nécessaire pour toutes les instructions Java.
Run
- soit celui au-dessus de la méthode main
dans l’éditeur, soit le bouton Play
en haut à droite de VS Code.
Normalement, je préfère lancer les programmes au terminal avec ma propre commande soit
java NomDuFichier.java
(ici ce seraitjava Bonjour.java
) mais la structure simplifiée présentée ici exige une commande un peu plus complexe en date de Java23java --enable-preview NomDuFichier.java
.
L’indentation dans l’exemple ci-dessus est très important pour la lisibilité du code et pour vérifier que les accolades sont bien fermées. Notez que l’accolade fermante est visible directement en dessous de la définition de la structure qu’elle ferme (ici la méthode, mais il y en aura d’autres). C’est une convention de style très utile parce que c’est facile d’oublier ou d’effacer une accolade par accident.
VS Code devrait créer cette indentation automatiquement, mais c’est facile de le briser en modifiant ou en déplaçant du code. Utiliser régulièrement la commande “Mettre le document en forme” (dans VS Code : Alt+Shift+F
ou clic droit > “Mettre le document en forme”) pour maintenir une indentation correcte. Voici des moments quand vous devriez utiliser cette commande :
void main()
) parce qu’il y a d’autre code dans le cheminNotez que “Mettre le document en forme” ne fonctionne pas s’il y a des erreurs de syntaxe, soit du code qui n’est pas compris par le compilateur Java. Si les outils Java sont activés, ces erreurs seront signalés pendant que vous tapez votre code : l’endroit de l’erreur est souligné en rouge. Si vous passez votre curseur sur cet endroit, vous pouvez lire dans une info-bulle un message décrivant l’erreur. Si les outils Java ne sont pas activés, vous verrez le même message d’erreur et des informations sur son endroit dans le code quand vous tentez de lancer le programme.
Voici quelques exemples d’erreurs communes :
{
, (
, ;
ou des "
manquants ou de surplus dans le codestring
au lieu de String
print1n
(le chiffre 1) au lieu de println
(la lettre L minuscule)"
) -> ce texte est alors interprété comme le nom de quelque chose qui devrait exister dans le code mais qu’on ne trouve pas.Quiz de vérification sur la structure d’un programme Java
Travaillez dans le répertoire GitHub partagé par votre enseignant pour la pratique et les exercices
Salut.java
et écrivez le code pour afficher le message “Salut gang!” à la console. Assurez-vous que le code fonctionne.captures
dans votre répertoire de travail.4-1-Structure.png
.
Sur Windows, l’outil de capture d’écran se lance avec la touche
Windows
+Shift
+S
. Une fois l’image capturé, cliquez sur l’icône de notification pour ouvrir l’éditeur des captures. Enregistrez l’image dans le dossier “captures” de ce dossier.
À la fin de cet exercice, votre répertoire devrait avoir la structure et le contenu suivants :
1
2
3
4
5
pratique-[votre nom]
|---captures
| `---4-1-Structure.png
|---README.md
`---Salut.java
main
n’est pas juste le point d’entrée pour les programmes Java. C’est une convention qui se trouve implicitement ou explicitement dans un grand nombre de langages, comme Python, C++, C#, Go, etc. ↩
La déclaration implicite d’une classe (ne pas avoir à déclarer une classe dans le code source) est une simplification permise pour les petits projets depuis Java22 et le JEP463. Cette simplification permet aussi une méthode void main()
comme point de départ pour le programme. ↩ ↩2 ↩3