Pouvons-nous surcharger la méthode main() en Java ?
La question est que "pouvons-nous surcharger la méthode main() en Java ?"
- Oui, nous pouvons surcharger la méthode main() en Java .
- JVM appelle n'importe quelle méthode par sa signature ou, en d'autres termes, JVM recherche la signature, puis appelle la méthode.
- Si nous surchargeons une méthode main() dans un programme, il y aura plusieurs méthodes main() dans un programme. Alors JVM appelle quelle méthode ? nous n'avons pas besoin de confondre si nous avons plusieurs méthodes main() alors JVM n'appelle qu'une seule méthode main() avec (string[] argument) par défaut.
Exemple :
class MainMethodOverloading { public static void main(String[] args) { System.out.println("We are in String[] args"); } public static void main(int args) { System.out.println("We are in int args"); } public static void main(String args) { System.out.println("We are in String args"); } }
Sortie
E:\Programs>javac MainMethodOverloading.java E:\Programs>java MainMethodOverloading We are in String[] args
Par défaut, JVM n'appelle qu'une seule méthode main() d'un argument String , Mais si nous voulons appeler une autre méthode main() ou toute autre méthode main() surchargée , alors nous ne pouvons faire qu'une seule chose, c'est-à-dire que nous pouvons appeler explicitement la méthode main() surchargée .
Nous pouvons appeler d'autres méthodes main() dans la méthode main() d'origine avec un argument String .
Exemple :
// Java Program to demonstrate overloading of // main() method import java.io.*; class MainMethodOverloading { // Origional main() method public static void main(String[] args) { System.out.println("Hi, We are in main (String [] args) "); MainMethodOverloading.main("Call main() with one argument"); } // These are the overloaded main() methods public static void main(String args1) { System.out.println(args1); MainMethodOverloading.main("call main() with", "two argument"); } public static void main(String args1, String args2) { System.out.println(args1 + args2); MainMethodOverloading.main("call main() with", "three argument", "from two argument main()"); } public static void main(String args1, String args2, String args3) { System.out.println(args1 + args2 + args3); } }
Sortie
E:\Programs>javac MainMethodOverloading.java E:\Programs>java MainMethodOverloading Hi, We are in main (String [] args) Call main() with one argument call main() withtwo argument call main() withthree argumentfrom two argument main()