匿名代码块、静态代码块和构造函数
1、执行顺序:静态代码块、匿名代码块、构造函数。
public class Student{
{
System.out.println("匿名代码块");
}
static{
System.out.println("静态代码块");
}
public Student(){
System.out.println("构造函数");
}
public static void main(String[] args){
System.out.println("============");
Student student1 = new Student();
System.out.println("============");
Student student2 = new Student();
}
}
输出结果:
静态代码块
============
匿名代码块
构造函数
============
匿名代码块
构造函数
- 总结:
- 静态代码块在JVM加载类的时候就会被调用,因为每个类只会被加载一次,所以静态代码块只会被调用一次。若有多块静态代码块,按照先后顺序执行。
- 匿名代码块和构造函数在new对象的时候被调用,并且先调用匿名代码块、后调用构造函数。