I tried searching for this question through the search engine but could find a topic that explained the difference between initializing a class and instantiating an object.<
When a Java class is "loaded" into the JVM the class representation must be initialized in several ways.
There is a specific set of terminology used to refer to class initialization, though I don't recall the specifics. Certain things can only occur after a class has been initialized to a specific point, etc.
Instantiating an object can only occur after the class has been loaded and initialized (though all methods do not need to have been verified). The size of the object is gotten from the class and that much heap is located and zeroed. The object header is filled in with a pointer to the class and other fields used to manage the class. Then the appropriate constructor method for the class is invoked (and it will invoke any super's constructor).