Java 什么是;“卸载类”;意思是

Java 什么是;“卸载类”;意思是,java,android,static,Java,Android,Static,当查看一个类的静态变量何时不再存在时,我发现当一个类被卸载时,它们的静态变量会被重新初始化。“卸载类”是否意味着销毁(如果我们假设该类是活动)? Thank's如果类加载器需要内存来加载新类而可用内存不足,则卸载类加载器完成的类id 如果在不同的时刻重新加载卸载的类,则会重新初始化静态变量。卸载类可能会发生,也可能不会发生,这取决于JVM实现,并且不应影响可访问的任何类。引自JLS: 当且仅当垃圾收集器可以回收类或接口的定义类加载器时,才可以卸载该类或接口,如前所述“ 您可以在´中找到可能/可能

当查看一个类的静态变量何时不再存在时,我发现当一个类被卸载时,它们的静态变量会被重新初始化。“卸载类”是否意味着销毁(如果我们假设该类是活动)?
Thank's

如果类加载器需要内存来加载新类而可用内存不足,则卸载类加载器完成的类id


如果在不同的时刻重新加载卸载的类,则会重新初始化静态变量。

卸载类可能会发生,也可能不会发生,这取决于JVM实现,并且不应影响可访问的任何类。引自JLS:

当且仅当垃圾收集器可以回收类或接口的定义类加载器时,才可以卸载该类或接口,如前所述“


您可以在´中找到可能/可能不会发生的完整描述。

基于JLS,我认为类加载器不负责卸载
一个类或接口可能被卸载,如果且仅当它的定义类加载器可以被垃圾收集器回收,正如所讨论的那样
@这是真的,我认为是次优的这是一个答案。@weston从今天14:00左右看到我的答案。