话不多说参见代码:
package com.cmos.adapter.service;
public class Test {
public Test(){
System.out.println("我是构造方法");
}
//构造代码块
{
System.out.println("我是构造代码块");
}
//静态代码块
static {
System.out.println("我是静态代码块");
}
public static void main(String[] args){
Test t1 = new Test();
Test t2 = new Test();
}
}
执行结果如下:
静态代码块是在类实例化就执行,构造代码块与构造函数是在对象实例化时执行,并且构造代码块优先于构造函数执行;