构造代码块的作用:
给对象进行统一的初始化
构造代码块的格式:
{
构造代码块;
}
注意:构造代码块的大括号必须位于成员之上
代码块的类别:
1.构造代码块
2.局部代码块
大括号位于方法之内。作用:缩短局部变量的声明周期
3.静态代码块
构造代码块注意事项:
1.java编译器编译一个java源文件时,会把成员变量的声明语句提前至一个类的最前端
2.成员变量的初始化工作都是在构造函数中执行
3.一旦经过java编译器编译后,构造代码块的代码块就会被移动到构造函数中执行,构造函数中的代码是最后执行的
4.成员变量的显式初始化与构造代码块的代码是按照代码顺序执行的
class Test{
int i=1000;
{
i=3000;
}
public Test(){
i=2000;
}
}
public class Test2 {
public static void main(String[] args) {
Test t=new Test();
System.out.println("i="+t.i);
}
}
可以调换以上三个i的值先后位置,看输出的i的值有什么不同