No, JVM invokes main method even before the instantiation of the class. As non-static members or methods cannot be called with the class name directly so main() method should be declared as static.
Example
public class Main { public void main(String[] args) { System.out.println("Non static main method."); } } |
Output
Error: Main method is not static in class Main, please define the main method as: public static void main(String[] args) |
Java interview questions on main method
- Can we overload main() method in java?
- Can we declare main() method as private or protected or with no access modifier?
- Can we declare main method as non static in java?
- Why main() method must be static?
- Can we change return type of main() method?
- Can we run java class without main() method?
- Can we declare the main method as final?