La méthode main constitue la partie principale du programme, permettant l'exécution d'une application Java.
public static void main(String[] args){ //instructions... }
public indique que la méthode peut être appelée par n'importe quel objet.
static indique que la méthode est une méthode de classe, c'est-à-dire qu'elle restera accessible même s'il n'existe aucune instance de la classe.
void indique qu'aucune valeur ne sera retournée par la méthode.
L'argument de la méthode main est un tableau d'éléments textuels fournissant le moyen de passer des informations à l'application. Chaque chaîne de caractères du tableau est appelée un argument de ligne de commande.
public class AfficheArguments { public static void main (String[] args){ for (int i = 0; i < args.length; i++) System.out.println('args[' + i + '] : ' + args[i]); } } // Lancement de la classe en ligne de commande java AfficheArguments Le langage de programmation Java /* Affichage des arguments de la ligne de commande args[0] : Le args[1] : langage args[2] : de args[3] : programmation args[4] : Java */
Les arguments de ligne de commande sont tous les éléments suivants l'identificateur de classe. Ce dernier, les options et la commande java n'en font pas partie.
java [-options] identificateur_classe arguments... java -verbose:class UneClasse Un argument /* deux arguments args[0] : Un args[1] : argument */
Lorsque la méthode main est trouvée dans une classe, elle devient la méthode à partir de laquelle démarre automatiquement le programme.
Public class Repetition { String balise = "<br>"; public static void main(String[] args){ for(int i = 0; i < 10; i++) System.out.println(balise); } }
Un programme Java simple ne pourrait contenir qu'une seule classe renfermant une méthode main regroupant les instructions destinées à être exécutées.
D'autre part, il est permis d'utiliser une méthode main() avec un type de retour, mais elle ne sera pas appelée lorsque la classe sera invoquée.
public static String main(String[] args){ ... }