任何人都可以解释一下这个输出是怎么来的
class Class
{
{
System.out.println("Instance Initializer block");
}
Class()
{
System.out.println("Default Constructor");
}
static
{
System.out.println("Static Block");
}
public static void main(String[] Args)
{
new Class();
System.out.println("Hello world");
}
}
输出:
Static Block
Instance Initializer Block
Default Constructor
Hello World
答案 0 :(得分:4)
首次执行静态初始化程序块,初始化类时,打印"Static Block"
。
创建实例(new Class()
)时,首先执行实例初始化程序块(打印"Instance Initializer Block"
),然后执行构造函数(打印"Default Constructor"
)。
最后执行main方法的println
语句,打印"Hello World"
。
答案 1 :(得分:1)
序列如下