package test;
/**
* 代码块,构造器
* @author
*加载顺序:静态代码块>main方法>(构造)代码块>构造器
*
*构造代码块:直接在类中定义且没有加static关键字的代码块称为{}构造代码块。构造代码块在创建对象时被调用,每次创建对象都会被调用,并且构造代码块的执行次序优先于类构造函数。
*静态代码块:初始化时只加载一次
*/
public class BlockDemo {
{
System.out.println("代码块1.。。。");
}
static{//初始化时加载,在对象new之前加载
System.out.println("静态代码块。。。");
}
{
System.out.println("代码块2.。。。");
}
public BlockDemo() {
System.out.println("构造器。。。");
}
public static void main(String[] args) {
System.out.println("======主方法========");
new BlockDemo();
new BlockDemo();
}
}