Java >> Tutoriel Java >  >> Java

La méthode main() est-elle obligatoire en Java ?

La question est que "La méthode main() est-elle obligatoire en Java ?"

  • Oui, nous pouvons écrire un programme Java sans la méthode main() mais il y a une condition si et seulement si la version de Java JDK jusqu'à JDK 5.
  • Jusqu'à Java JDK 5 méthode main() n'était pas obligatoire à inclure dans le programme Java.
  • Si nous n'écrivons pas notre code dans la méthode main() ou n'incluez pas la méthode main() dans notre programme alors, dans ce cas, nous devons écrire notre code sous bloc statique alors seulement, dans ce cas, nous pouvons exécuter notre code normalement comme nous le faisons.

Exemple :

// Java Program to demonstrate till Java JDK5 version 
// without main() method is possible.
class WithoutMainMethod {
    static {
        int i = 2, j = 4, sum;
        
        sum = i + j;
        
        System.out.println("The sum of i and j is :" + sum);
        System.out.println("This program is without main() valid till JDK 5 version");
    }
}

Sortie

E:\Programs>javac WithoutMainMethod.java

E:\Programs>java WithoutMainMethod
The sum of i and j is : 6
This program is without main() valid till JDK 5 version
  • Dans le cas du bloc statique, ce bloc statique s'exécute avant la méthode main() .
  • Le bloc statique s'exécute au moment du chargement de la classe.
  • Dans le cas de la méthode main() , notre programme commence à s'exécuter à partir de la méthode main() ou en d'autres termes c'est le point de départ de l'exécution du programme.
  • Nous pouvons appeler la méthode main() directement sans création d'objet car il est statique.
  • Jusqu'à Java JDK 5 méthode main() n'était pas obligatoire, mais à partir de Java JDK 6 main() est obligatoire et si nous n'incluons pas la méthode main() dans notre programme, nous obtiendrons RuntimeException "main method not found in the class" .

Exemple :

// Program to demonstrate without main() method 
// from Java JDK 6 version
class WithoutMain{
	int i=2 , j=4 , sum=0;
	sum = i + j;
	System.out.println("The sum of i and j is :" + sum);
	System.out.println("This program without main() is not valid from JDK 6 version");
}

Sortie

E:\Programs>javac WithoutMain.java

E:\Programs>java WithoutMain
Error: Main method not found in class WithoutMain, please define the main method as:
   public static void main(String[] args)

Balise Java