The purpose of main method in Java is to be program execution start point . When you run java.exe , then there are a couple of Java Native Interface (JNI) calls. These calls load the DLL that is really the JVM (that’s right – java.exe is NOT the JVM).