class对象一旦加载到内存中,何时会被释放?

按照网上的说法:
1.所有class类型的对象被销毁。2.没有地方再引用class的反射。3.加载该class的classloader被销毁。 满足这三个条件class对象才会被销毁。

AppClassloader,ExtensionClassloader,bootstrapClassloader应当是随着jvm的创建而创建,jvm的关闭而消亡。所以class对象永远不会被释放么?

阅读 6.3k
3 个回答

谁加载谁释放。不是说bootstrap不会销毁其他加载器加载的类就不会被销毁了

加载这个类的类加载器被释放后,会释放这个class对象。

推荐问题