I got known and also experienced that JVM does lazy loading classes, that is, even the class is imported, it will not be loaded if this class is not used, it is loaded only when it's actively needed.
I am not sure do JDK constantly use this lazy loading strategy or another implementation will be used in some cases, any JDK specification or doc make this clear?
I have this question is because that I ship class which import some class that is not present and will not be used.