初始化块用于对象创建时的初始化操作。静态初始化块使用static定义,类加载时执行一次,用于初始化静态变量;实例初始化块在每次创建对象时、构造函数前执行,多个按顺序运行,适合共用初始化逻辑,可用于默认值设置、资源加载等,异常需try-catch处理,虽不常用但有助于统一初始化。
在Java中,匿名代码块又称为初始化块,它没有名称,主要用于在创建对象时执行一些初始化操作。这类代码
块会在构造函数执行之前运行,适合放置一些共用的初始化逻辑。
静态初始化块
静态初始化块使用 static 关键字定义,只在类加载时执行一次,通常用于初始化静态变量。示例:
static {
System.out.println("静态代码块:类加载时执行");
}
实例初始化块(非静态)
实例初始化块没有 static 修饰,每次创建对象时都会执行,且在构造函数之前运行。示例:
{
System.out.println("实例代码块:每次创建对象时执行");
}
使用场景和注意事项
- 多个实例初始化块按代码顺序执行
- 静态块只执行一次,无论创建多少对象
- 可用于设置默认值、资源加载或权限检查等前置操作
- 异常处理需显式用 try-catch 包裹








