Java中可以通过初始化块进行数据赋值。如:
public class HelloWord{
String name ; //定义一个成员变量
// 通过初始化块为成员变量赋值
{
name =" 行者";
}
}
在类的声明中,可以包含多个初始化块,当创建类的实例时,就会一次执行这些代码块。如果使用 static 修饰初始化块,就称为静态初始化块。
需要特别注意的是:静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块