引起 java.lang.ExceptionInInitializerError 错误的原因是:在类的初始化时,出错。也就是说,在加载类时,执行static的属性、方法块时,出错了。
比如
public class AA {
private static AA aa = new AA();
private AA(){//构造方法
init();
}
public void init(){
.... }
}
初始化类时,会调用init方法,如果Init方法出错,这类初始化失败,就会报java.lang.ExceptionInInitializerError错误
同理,在执行
static{
...
}
方法块时,也可能报这个错。
本文深入解析了java.lang.ExceptionInInitializerError错误的成因,主要发生在类初始化过程中,如静态属性、方法块或构造方法中出现异常。通过示例代码解释了错误触发的具体场景。
649

被折叠的 条评论
为什么被折叠?



