How do I keep track when class is loaded and destroyed in jvm? Is there any callback method that is exposed by the jvm?
From Java 9 onward, you can use -Xlog. e.g.:
java -Xlog:class+load -Xlog:class+unload ...
This will print entries like:
[0.296s][info][class,load] java.lang.Shutdown source: jrt:/java.base
[0.296s][info][class,load] java.lang.Shutdown$Lock source: jrt:/java.base
You can also use -Xlog:help to get more information on the option.