高级Java开发中什么是静态初始化器?

2025-03-07 10:38:01
推荐回答(2个)
回答1:

  静态初始化器是由关键字static引导的一对大括号括起的语句组。它的作用与类的构造函数有些相似,都用来完成初始化的工作,但是静态初始化器与构造函数有三点根本的不同:
  (1)构造函数是对每个新创建的对象初始化,而静态初始化器是对每个类进行初始化;
  (2)构造函数是在用new运算符产生新对象时由系统自动执行,而静态初始化器则是在它所属的类加载入内存时由系统调用运行的;
  (3)不同于构造函数,静态初始化器不是方法,没有方法名、返回值和参数列表。

回答2:

static{和}之间的代码被称为静态初始化器。它只有在第一次加载类时运行。只有静态变量才可以在静态初始化器中进行访问。静态初始化器只运行一次。