首先分清楚三类的区别
以下是静态代码块:
static {
System.out.println("我是静态代码块");
}
以下是构造代码块:
{
System.out.println("我是构造代码块");
}
以下是构造方法:
public Demo2() {
System.out.println("我是构造方法");
}
搞清楚了三种区别:
运行以下结果
首先static会在类加载时候就跟着加载,所以是第一个打印出来的,而接下来运行到main方法就依次往下运行。
在运行到创建对象的时候,首先会执行构造代码块,他和构造方法一样,都是只要创建就会运行。但是比构造方法稍早一些运行。