使用static声明的代码块,称为静态块,静态块主要目的是为静态属性进行初始化。
class Demo{
{
System.out.println("构造块。。。");
}
static{
System.out.println("静态块。。。");
}
public Demo(){
System.out.println("构造函数。。。");
}
}
public class CodeDemo03{
static {
System.out.println("主类中的静态块。。。");
}
public static void main(String[]args){
for(int i=0;i<3;i++){
new Demo();C
}
}
}
运行结果:
C:/mldn>javac CodeDemo03.java
C:/mldn>java CodeDemo03
主类中的静态块。。。
静态块。。。
构造块。。。
构造函数。。。
构造块。。。
构造函数。。。
构造块。。。
构造函数。。。
从上面结果可以看出:
静态块只执行一次,而且优先于构造快,主函数