Java java.lang.ExceptionInInitializerError 错误解决方案

引起 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{

  ...

}

方法块时,也可能报这个错。

 

解决方案,1、分析报错原因并改正程序;2、如果允许报错,可以添加try-catch捕获异常。

你可能感兴趣的:(Java语言程序设计)