does main method have to be static code example

Example 1: why main method is public static void in java

public : “public” is an access specifier which can be used outside the class. 
When main method is declared
public it means it can be used outside class.
static : To call a method we require object. Sometimes it may be 
required to call a method without the help of object. Then we declare that 
method as static. JVM calls the main() method without creating
object by declaring keyword static.
If we make the main method non-static, 
JVM will have to create its object first and then call main() method which 
will lead to the extra memory allocation.
void : void return type is used when a method does’nt return any value. 
main() method doesn’t return any value, so main() is declared as void.

Example 2: why main method static

Because the object is not required to call the static method. 
If we make the main method non-static, 
JVM will have to create its object first and then call main() method which 
will lead to the extra memory allocation.

Tags:

Misc Example