java中的ExceptionInInitializerError

Mat*_*usz 1 java exception

我正在从这个页面做一些测试:http://scjptest.com/mock-test.xhtml?execution = e7s1,并且有一个问题"这个程序执行时的结果是什么?".这是代码:

public class SuperHotel {
    static int x[];

    static {
        x[0] = 1;
    }

    public static void main(String args[]) {        
    }   
}
Run Code Online (Sandbox Code Playgroud)

答案是"抛出ExceptionInInitializerError".当"ExceptionInInitializerError"可能发生时,有人会说我这个代码中发生的原因吗?

Iqb*_*rol 5

ExceptionInInitializerError 抛出An  表示在评估静态初始化程序或静态变量的初始化程序期间发生异常.

在您的代码中,您尚未初始化数组x[],并且您正在x[0]=1静态块中使用,因此发生了异常.