Java 无名静态方法

2022-09-01 15:07:17

这是怎麽?

public class ABC {
   public ABC() {
         System.out.println("world");
   }
   static {
         System.out.println("hello");
   }
}

将打印:你好世界

我真的不明白这一点,或者静态代码是什么样的方法。


答案 1

它被称为“静态初始化块”。

它在首次加载类时运行;只有一次。

例如,每次实例化类时都会运行构造函数;静态块仅在 VM/类加载程序首次静态加载时运行一次。


答案 2

我认为值得注意的是,每次类装入器加载类时,静态块将只运行一次。这意味着如果您有多个类装入器,则该块可以执行多次。


推荐