当我只是尝试使用Java编写一些程序时,我尝试使用final
变量,我知道final
变量必须在声明时进行初始化,但是在main方法内部它接受了final
没有初始化的变量。我不知道是什么原因。任何人都可以告诉我原因。
谢谢
码:
class name
{
final int b; //here shows error
public static void main(String args[])
{
final int a; // here no error... why?
System.out.println("hai");
}
}
对于实例变量水平
最终变量只能初始化一次。
必须在构造函数结束之前初始化类级别的最终变量。
对于本地(方法)级别
因此,基本上,如果您不使用局部最终变量,也可以跳过它的初始化。
如果变量处于实例级别,则必须在定义或构造函数主体中对其进行初始化。
在您的代码中,您有一个final int b
从未初始化的实例变量,因此会出现错误。
您还有一个final int a
从未使用过的局部变量。因此,该变量没有错误。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句