【发布时间】:2014-01-06 05:27:27
【问题描述】:
您好,我有以下代码。当我使用实例变量时,我得到如下输出(默认值)
int value: 0
float value: 0.0
String value: null
Static int value: 0
但是,如果我尝试声明局部变量并打印默认值,则会给出一个应该初始化变量的错误。谁能解释一下原因?
public class DefaultValues {
int a;
float b;
String c;
static int d;
public static void main(String[] args) {
int e; // <----
DefaultValues dv = new DefaultValues();
System.out.println("int value: "+dv.a);
System.out.println("float value: "+dv.b);
System.out.println("String value: "+dv.c);
System.out.println("Static int value: "+d);
System.out.println("local int value: "+e); // <----
}
}
【问题讨论】:
-
局部变量没有默认值。它们必须在使用前进行初始化。
标签: java initialization instance-variables local-variables