public class Main {
private final static int i = 0;//声明时直接初始化
private final int j;//构造函数赋值(在构造代码块之后执行)
private final static int k;//静态代码块中赋值(先于构造代码块执行)
private final int m;//构造代码块中赋值(先于构造函数执行)
// public Main(int j) { //正确
// this.j = j;
// }
public Main() {//正确
this.j = 1;
}
static {//静态代码块
k = 2;
}
{//构造代码块
m = 3;
}
public static void main(String[] args) {
}
}
以上有4种初始化方式