JVM: Loading, Linking, Initializing
This chapter of JVM Specification describes three phases of life of a JVM class: loading, linking and initializing.
In order to start executing main method (public void main(String[] args)) of the main (or: initial) class the JVM needs to have a runtime representation of the class. If JVM does not have it, it needs to construct it from binary representation. This is called loading.









