为什么最终变量必须在构造函数完成之前初始化?
public class Ex
{
final int q;
}
当我编译这段代码时,我收到这样的错误
错误:变量 q 可能尚未初始化
The official原因是它是由Java 语言规范 8.3.1.2 http://docs.oracle.com/javase/specs/jls/se7/html/jls-8.html#jls-8.3.1.2:
必须在每个构造函数的末尾明确分配一个空白的最终实例变量声明它的类;否则会出现编译时错误。
空白final是一个final变量,其声明缺少初始值设定项(即您所描述的内容)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)