gpt4 book ai didi

java - 如果一个类被卸载并再次加载,静态 block 会被调用两次吗?

转载 作者:行者123 更新时间:2023-11-30 03:14:48 28 4
gpt4 key购买 nike

如果我有一个像下面这样的java类

public class XXX {
static {
...
...
}
}

如果 JVM(由于 Permgen 触发的 GC)卸载该类并稍后再次加载,静态 block 是否会被调用两次?

最佳答案

引用其他帖子:https://stackoverflow.com/a/148707/641955

The only way that a Class can be unloaded is if the Classloader used is garbage collected. This means, references to every single class and to the classloader itself need to go the way of the dodo.

如果这就是您正在做的事情,那么是的,静态 block 将在程序的生命周期内执行两次,每个类加载器的生命周期各执行一次。

关于java - 如果一个类被卸载并再次加载,静态 block 会被调用两次吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32901259/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com