The answer to this question depends on version of java you are using. Prior to JDK 5, main method was not mandatory in a java program.
- You could write your full code under static block and it ran normally.
- The static block is first executed as soon as the class is loaded before the main(); method is invoked and therefore before the main() is called. main is usually declared as static method and hence Java doesn’t need an object to call main method.
- If run prior to JDK 5
program is running without main() method
- If run on JDK 6,7,8
Error: Main method not found in class Test, please define the main method as: public static void main(String args)
However, From JDK6 main method is mandatory. If your program doesn’t contain main method, then you will get a run-time error “main method not found in the class”. Note that your program will successfully compile in this case, but at run-time, it will throw error.
This article is contributed by Gaurav Miglani. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.