总结一下:
1.执行顺序:静态代码块>构造代码块>构造方法
理由:静态代码块(static{})在类加载的时候执行一次。
构造代码块({}内的部分)在每一次创建对象时执行,始终在构造方法前执行。
构造方法在新建对象时调用( 就是new的时候 )。
注意: a.静态代码块在类加载的时候就执行,所以它的优先级高于入口main()方法。
b.当三种形式不止一次出现,同优先级是按照先后顺序执行。
来看一道题巩固一下:
public class B
{
public static B t1 = new B();
public static B t2 = new B();
{
System.out.println("构造块");
}
static
{
Syste