浅谈代码块的加载顺序

浅谈代码块的加载顺序

代码块、静态代码块和构造方法的执行顺序:

静态代码块>匿名代码块>构造方法

public class Person {
    {
        System.out.println("匿名代码块");
    }
    static {
        System.out.println("静态代码块");
    }

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

    public static void main(String[] args) {
        Person p1 = new Person();
        System.out.println("-----------");
        Person p2 = new Person();
    }
}

总结:1.静态代码块最先执行,但只在类加载的时候执行一次

​ 2.匿名代码块和实例同时产生,可以用来赋初始值

​ 3.构造方法在匿名代码块之后执行

补充:除了我们常用的导入包之外还可以使用静态导入包、方法。当我们静态导入方法之后,就可以直接引用方法而不需要通过类名去点。

import static java.lang.Math.random;		                                    //静态导入方法需要在import后加一个static,
										   //不然会报错
public class Test {
    public static void main(String[] args) {
        System.out.println(random());		                                 //当静态导入random方法之后,就不需要像
        									//原来Math.random(),直接random()使用即可
    }
}
刚刚参加工作,很有很多不懂不会的,发现错误,欢迎指正,谢谢!
原文地址:https://www.cnblogs.com/xd-study/p/12928551.html