java中的代码块分为静态代码块和非静态代码块,平时用的可能不多,这里介绍一下。
静态代码块:
static{
System.out.println("静态语句块");
}
非静态代码块:
{
System.out.println("非静态语句块");
}
无论静态代码块还是非静态代码块,都会在构造函数之前执行,可以定义多个,来做类初始化之前的一些准备工作。
静态代码块只会在类初始化的时候执行一次,非静态代码块可以在每次初始化实例的时候都执行,即可以执行多次。
执行顺序:
父类静态代码块--->子类静态代码块----->父类非静态代码块----->父类构造函数---->子类非静态代码块----->子类构造函数
执行结果: