前几天,我在查看一些代码,然后发现:
static { ... }
来自C ++,我不知道为什么会这样。它不是错误,因为代码编译良好。这个“静态”代码块是什么?
这是一个静态初始化器。它是在加载类时执行的(确切地说是初始化,但通常不会注意到它们之间的区别)。
可以将其视为“类构造函数”。
请注意,还有一些实例初始化器,它们看起来一样,只是它们没有static关键字。当创建对象的新实例时,除了构造函数中的代码外,还会运行这些代码。