匿名代码块与static代码块
匿名代码块与static代码块
补充static
关键词中关于静态方法块的内容。[1]
首先看一下测试代码
public class Person {
// 构造方法
Person(){
System.out.println("构造方法");
}
// 匿名方法块
{
System.out.println("匿名方法块");
}
// static方法块
static {
System.out.println("静态方法块");
}
}
class Test {
public static void main(String[] args) {
Person person1 = new Person();
System.out.println("=======================");
Person person2 = new Person();
}
}
运行结果:
由运行结果可知:
-
在类初次被加载的时候,会最先加载静态方法块,然后加载匿名方法块,最后在加载构造方法。
-
但静态方法块只会加载一次,在第二次加载类时,只会加载先加载匿名方法块和构造方法。
-
所以也可以用匿名代码块来进行一些初始赋值,一些只进行一次的操作则放在静态代码块里。