I'm just trying to see if I can fully understand the concept of static and the reason of static in a main class.
There is no such thing as a main class in Java.
The keyword static refers to the main class.
No, it refers to static classes or static class members.
The reason why methods in a main class are static is because the main class does not deal with objects but with the class itself.
There is no such thing as a main class. The statement is meaningless.
However constructors deal with objects and therefore uses non static constructors because objects have unique characteristics and it would not make sense to make them static.
All constructors are 'non-static'. There is no such thing as a static constructor. There is no point in any of this discussion.
If anyone can see if I made a mistake in my statement or can steer me in the right direction, it would help me a great deal! :)
I think you need to start again, forgetting about non-existent 'main classes' and 'static constructors'. Basically static methods refer to methods that can be invoked without having an instance of the class. Conversely, constructors create an instance of the class so they can't logically be static.