I do not understand why the main method has to be static. I understand static variables but static methods are difficult for me to grasp. Do static method exists so that one
Just take a look on this link, it will definately help you to understand: Why can't make a constructor static?
AND
Constructor is called at Run-time when we create Objects. Static is same for all objects but all objects have their own state and properties. So, if we have had static constructors creation of one object would affect all the other existing objects. Note: static is class level while constructors related to the objects.
e.g.
public class Foo
{
String name;
int id;
// define constructors
Foo (String name, int id)
{
this.name = name;
this.id = id;
}
p s v m(String[] arg)
{
Foo f1 = new Foo("Amit",001);
Foo f2 = new Foo("Rahul",002);
}
}
If we create static constructor then both objects(f1 also) will contain the last updated value regarding name and id as Rahul and 002.