关于final修饰字段的初始化问题
一、 final修饰【实例变量】
1. 类下没有【无参的构造方法】时
(1) 定义时显式赋值
(2) 构造方法中赋值(每个构造方法都需要赋值)
(3) 普通初始化块中赋值(静态初始化块不可以)
2. 类下有【无参的构造方法】时
(1) 定义时显式赋值
(2) 普通初始化块中赋值(静态初始化块不可以)
二、 final修饰【静态变量】
1. 类下没有【无参的构造方法】时
(1) 定义时显式赋值
(2) 静态初始化块中赋值(普通初始化块不可以)
2. 类下有【无参的构造方法】时
(1) 定义时显式赋值
(2) 静态初始化块中赋值(普通初始化块不可以)