这是什么?
public class ABC {
public ABC() {
System.out.println("world");
}
static {
System.out.println("hello");
}
}
将打印: 你好 世界
我真的不明白这个,或者静态代码是什么样的方法。
答案 0 :(得分:51)
它被称为“静态初始化块”。
首次加载类时运行;只有一次。
例如,每次实例化类时都会运行构造函数;当静态块首次由VM /类加载器静态加载时,它只运行一次。
答案 1 :(得分:7)
我认为值得注意的是,每次类加载器加载一个类时,静态块都会运行一次。这意味着如果您有多个类加载器,则该块可以执行多次。