Replacing ‘public’ with ‘private’ in “main” in Java
Consider following Java program:
1)public: It is an access specifier which allows the JVM(Java Virtual Machine) to access the main method from anywhere.
2)static: static keyword allows the JVM to access the main method without any instance(object).
3)void: It specifies that the main method doesn’t return anything.
4)main: name of the method(function) configured in JVM.
5)String args: Command line arguments.
Now, if we replace ‘public’ with ‘private’ in “public static void main”, the above code becomes:
The above code will be compiled successfully, but will throw a runtime error as follows:
Error: Main method not found in class GFG, please define the main method as: public static void main(String args) or a JavaFX application class must extend javafx.application.Application
Reason: Since the access specifier was changed from “public” to “private” JVM was unable to access/locate the main method.
Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer Complete Interview Preparation Course.