概述
- 在Java中,使用 { } 括起来的代码被称为代码块。
分类
- 局部代码块
- 位置:在局部位置,方法中
作用:缩小变量的作用域,减少变量的声明周期,提早的释放的内存。
- 位置:在局部位置,方法中
- 构造代码块
- 位置:在类中,方法外 (成员位置)
- 特点:每一次在创建对象之前,都会调用一次构造代码块
- 作用:多个构造方法方法中相同的代码存放到一起,每次调用构造都执行,并且在构造方法前执行
静态代码块
- 位置:在类中,方法外 (成员位置)
- 特点:使用static关键字修饰,随着类的加载而执行,并且只执行一次。
- 作用:当我们想要对类进行初始化的时候,我们就可以使用静态代码块。
我们以后使用最多的,最常见的代码块是静态代码块。
面试题
1.看程序写结果
class Student {
static {
System.out.println("Student 静态代码块");
}
{
System.out.println("Student 构造代码块");
}
public Student() {
System.out.println("Student 构造方法");
}
}
class StudentDemo {
static {
System.out.println("StudentDemo的静态代码块");
}
public static void main(String[] args) {
System.out.println("我是main方法");
Student s1 = new Student();
Student s2 = new Student();
}
}
- 答案:
StudentDemo的静态代码块
我是main方法
Student 静态代码块
Student 构造代码块
Student 构造方法
Student 构造代码块
Student 构造方法