目录
在项目开发中,通常会使用静态代码块来初始化只调用一次的数据。常用的代码块(按序)是静态代码块,普通代码块,同步代码块,构造代码块
1、普通代码块
在方法中写的代码块
格式:{
}
2、构造代码块
是在类中定义的代码块,在创建对象时被调用,优于构造方法执行
格式:{
}
3、静态代码块
在类中使用static声明的代码块
格式:static{
}
调用顺序以及示例:
static代码块在第一次使用的时候被调用(创建对象),只会执行一次,优于构造块执行 ,构造代码块执行顺序优先于构造方法
示例:
public class Demo {
public static void main(String[] args) {
demoo d=new demoo();
demoo d1=new demoo();//静态代码块只执行一次,并且是最先执行
demoo d2=null;//不会调用任何代码块
}
}
class demoo
{
static {
System.out.println("静态代码块执行");
}
public demoo()
{
System.out.println("构造方法执行");
}
{
System.out.println("构造代码块执行");
}
public void test()
{
{
System.out.println("普通代码块,起分隔作用");
}
}
}
执行结果:
//静态代码块执行
//构造代码块执行
//构造方法执行
//构造代码块执行
//构造方法执行