Voici le traditionnel Hello World en java :
// Toto.java
public class Toto
{
public static void main( String[] args )
{
System.out.println("Hello world");
}
}
Cet exemple introduit plusieurs notions fondamentales.
Premier point, je fichier Toto.java contient une déclaration de classe, la classe Toto.
La déclaration de classe commence toujours ainsi :
// NomDeLaClasse.java
public class NomDeLaClasse
{
// Corps de la classe
}
Noter que le nom du fichier est conditionné par le nom de la classe publique1) déclarée dans ce fichier.
Vous ne pouvez déclarer qu'une seule classe par fichier2).
Notre classe HelloWorld ne contient qu'un seul membre, la méthode statique main. C'est une méthode un peu particulière qui va servir de point d'entrée pour la machine virtuelle. Ce qu'il faut retenir c'est que l'exécution de HelloWorld (java HelloWorld) va déclencher l’exécution de cette méthode.
public static void main( String[] args )
{
// Corps de la méthode
}
L'analyse de la déclaration d'une méthode nous fournis plusieurs informations importantes, dans le cas de main nous avons :
public : C'est la visibilité de la méthode, dans notre cas la méthode est déclarée public pour permettre à la machine virtuelle de l'exécuter. De façon générale3), tous les membres d'une classe doivent être déclarés avec un indicateur de visibilité ( public, protected, package, private).static : Cette notion sera détaillée par la suite mais elle nous indique que la méthode main est une méthode de classe 4).void : C'est le type de retour. Les méthodes, quand elles retourne des données doivent préciser le type attendu en retour, si une méthode ne retourne rien, cela est précisé avec le mot-clef void (silencieuse)main : C'est l'identifiant (ou le nom) de la méthode. Dans notre cas la méthode s'appelle simplement main5)( String[] args ) : Ce sont les paramètres de la méthodes, dans notre cas la méthode attend une liste (indiquée par les []) de chaîne de caractère (String). Les paramètres transmis à la méthode seront disponibles dans le corps de la méthode à travers à l'identifiant args. Sur ce dernier point, le choix des identifiants est libre, nous aurions très bien plus utiliser l'identifiant parametres ou options.6).Quand on parle de la déclaration de méthode, il n'est pas rare d'évoquer également la signature de la méthode. La signature est définit par le nom, et les arguments :
// Signature de la méthode main( String[] args )
Nous verrons par la suite qu'une même méthode peut être déclarée plusieurs fois avec le même identifiant mais avec des arguments différents, on parle de surcharge
args est une convention, on parle de paramètres informels