Java - 卸载类

标签 java

我正在使用标准 Java 类加载器加载类:

ClassLoader loader = new MemoryClassLoader(s.toByteArray());
Class<?> myClass = loader.loadClass(className);

MemoryClassLoader 直接派生自 ClassLoader 并重写 findClass() 方法:

Override
protected Class<?> findClass(String name) throws ClassNotFoundException {
   return defineClass(name, byteArray, 0, byteArray.length);
}

我想知道是否需要以某种方式卸载加载的类。是否有任何 unload() 方法或我必须调用的方法?

最佳答案

您不必卸载或取消分配您的类。垃圾收集器(又名 GC)会为您处理所有未设置的事情。

您可以在此处找到有关 GC 的信息 http://en.wikipedia.org/wiki/Garbage_collection_%28computer_science%29

关于Java - 卸载类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30712902/

相关文章:

java - 使用 Guice 注入(inject)依赖项适用于一种方法,而不适用于另一种方法

java - 编译错误 :- packages are missing

java - Spring PropertyPlaceholderConfigurer 无法解析重复目录名下的属性文件 - 接收 BeanDefinitionStoreException

java - 使用队列为每个现有实体创建单个实体会导致许多重复

java - 为什么 PathMatcher 不匹配路径?

java - 对于我的特殊情况,服务器应返回哪个HTTP代码?

java - 使用 jsoup 解析 HTML 数据

java - Spring @Configuration如何缓存对bean的引用

java - affablebean -with AngularJS 无法使用 netbeans 实现

Java - 如何复制修改前传递的集合对象?