代码块

在Java中,使用{}括起来的代码被称为代码块。

  • a:局部代码块
  • 在方法中出现;限定变量生命周期,及早释放,提高内存利用率
  • b:构造代码块 (初始化块)
  • 在类中方法外出现;多个构造方法方法中相同的代码存放到一起,每次调用构造都执行,并且在构造方法前执行
  • c:静态代码块
  • 在类中方法外出现,并加上static修饰;用于给类进行初始化,在加载的时候就执行,并且只执行一次。

代码块面试题:

class Student
{
    static
    {
        System.out.println("Student 静态代码块");
    }

    {
        System.out.println("Student 构造代码块");
    }

    public Student()
    {
        System.out.println("Student 构造方法");
    }
}

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();
    }
}

结果:

Demo2_Student静态代码块
我是main方法
Student静态代码块
Student构造代码块
Student构造方法
Student构造代码块
Student构造方法