为什么必须初始化局部变量以及为什么在使用之前不能初始化实例变量?

时间:2014-04-02 12:18:35

标签: java initialization

我注意到JAVA允许使用未初始化的实例变量,但它阻止使用未初始化的局部变量。我想知道为什么语言这么说

注意:这不是第一篇此类帖子。我也访问过以下问题。但无法找到原因的确切原因? 此问题可能与以下内容重复:

2 个答案:

答案 0 :(得分:1)

  

我注意到JAVA允许使用未初始化的实例   变量

不,如果你没有初始化,编译器会初始化实例变量。

答案 1 :(得分:1)

据我所知,

  • 实例变量:当类初始且实例变量的默认值为null =>时,将在运行时初始化实例变量在运行时会出错。
  • 局部变量:与类和实例变量不同,局部变量对于为其定位声明的位置非常繁琐:必须将声明放在实际使用变量的第一个语句之前。 =>语法错误的局部变量错误。 参考:Local variable in java