实例代码块

实例代码块写法

class Test {
	{
		System.out.println("语句块1");
	}
	{
		System.out.println("语句块2");
	}
	public static void main(String[] args) {
		Test test = new Test();
	}
}
  • 实例代码块可以编写多个,遵循自上而下的顺序依次执行
  • 实例代码块在构造函数调用前执行,构造方法执行一次,实例代码块也执行一次
  • 实例代码块也是Java语言为程序员准备的一个特殊时间,这个时机被称为“对象初始化”
静态代码块
class StaticTest {
	static {
		System.out.println("StaticTest类已被加载");
	}
	static {
		System.out.println("StaticTest类已被加载2");
	}
	public static void main(String[] args) {
		...
	}
}
  • 静态代码块在一个类中可以编写多个,同样遵循自上而下的执行顺序
  • 通常在类中完成预备工作,如初始化连接池、解析XML文件