1
4
如果没有对类的剩余引用,则类将像任何其他对象一样被卸载和垃圾收集。这意味着类不能有可访问的实例(由特定的类加载器实例加载),并且类加载器实例本身也必须有资格进行垃圾收集。 因此,基本上,您所要做的就是创建一个新的类加载器实例来加载该类的新版本,并确保不存在对旧版本实例的引用。 |
2
1
我相信您实际上需要有一个类加载器的层次结构,为了重新加载,您实际上去掉了低级的类加载器(通过普通的gc方法),因此也去掉了它加载的所有类。据我所知,JavaEE应用服务器使用该技术来重新加载应用程序,当加载在一个类加载器中的框架代码想要使用加载到其他地方的类时,会有各种有趣的结果。 |
3
0
在2015中,Java的类重载也是一个缺失的特性。
我写了一系列关于重新加载类的文章。但所有这些方法都不利于生产。
在Java中这种类重载是混乱的,不值得尝试。但我非常希望这是Java中的规范。 |