代码块:
在Java中,使用{}括起来的代码被称为代码块。
常见代码块的应用
a:局部代码块
- 在方法中出现;限定变量生命周期,及早释放,提高内存利用率.
b:构造代码块 (初始化块)(一般出现在面试中)
- 在类中方法外出现;多个构造方法方法中相同的代码存放到一起,每次调用构造都执行,并且在构造方法前执行
c:静态代码块
- 在类中方法外出现,并加上static修饰;用于给类进行初始化,在加载的时候就执行,并且只执行一次(因为类加载只是加载一次)。
- 一般用于加载驱动
综上所述:一般的运行顺序是:
静态代码块(随着类的加载而执行)-->构造代码块(随着类创建而执行优先于构造函数)-->局部代码块(随着方法的执行而加载)
举个例子:
class Student {
static {
System.out.println("Student 静态代码块");
}
{
System.out.println("Student 构造代码块");
}
public Student() {
System.out.println("Student 构造方法");
{
System.out.println("局部代码块")
}
}
}
class Demo2_Student {
static {
System.out.println("Demo2_Student静态代码块");
}
public static void main(String[] args) {
System.out.println("我是main方法");
Student s1 = new Student();
Student s2 = new Student();
}
}