静态代码块

随着类的加载而加载,并且只被加载一次,一般用于项目的初始化
static{…}

概述

1、 静态代码块:在类加载时就加载,并且只被加载一次,一般用于项目的初始化
2、 构造代码块:在调用构造方法前会自动调用,每次创建对象都会被调用
3、 局部代码块:方法里的代码块,方法被调用时才会执行
4、 静态代码块:static{ },位置:在类里方法外
5、 TODO创建测试类,类中写好静态代码块,构造代码块,构造方法,普通方法里嵌套局部代码块。测试他们的执行顺序。
6、 静态 - 构造代码块 - 构造方法 - 局部

测试

public class Test4 {
    public static void main(String[] args) {
       Car c = new Car();c.show();
       Car c2 = new Car();
    }
}
class Car{
    //静态代码块
    //1,在类第一次加载时就加载到内存中并一直驻存,
    //并全局共享,直到类消失静态资源才消失
    //2,并且静态资源只被加载一次
       static {
           System.out.println(1);
       }
       //构造代码块
       {
           System.out.println(2);
       }
       //  构造方法
       public Car() {
           System.out.println(3);
       }
       public void show() {
//     局部代码块
           {
              System.out.println(6);
           }
           System.out.println(4);
           System.out.println(5);
       }
}

Q.E.D.


努力成就未来