动态类加载是permgen的原因之一?

时间:2011-09-18 18:04:14

标签: java jvm

在不同的网站上,动态类加载是permgen问题的原因之一。

根据我的理解,动态类加载是在需要时加载类。如果加载了A类并且它引用了另一个类B,它也会随之加载。这是动态类加载。 对吗?如果是,这是JVM必不可少的内置功能。 我们可以做些什么?

或者我的理解在这里是错误的。当我们说动态类加载时,我们是否在这里考虑自定义类加载器?

我上面提到的最后一个问题是,Class由客户加载器加载一次。因此,当我们在应用程序服务器上进行热部署时, appserver如何加载新版本的类。它在这里使用不同的类加载器吗?

1 个答案:

答案 0 :(得分:3)

不,动态类加载是指在运行时加载在编译时未知的类,例如,通过Class.forName或反射(12)。