ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 局部变量 类的字段,变量有两次赋初始值的过程。一次在准备阶段,赋予系统初始值。另一次在初始化阶段,赋予程序员定义的初始值。因此,即使在初始化阶段,程序员没有为类变量赋值,也没有关系,类变量仍然具有一个确定的初始值,不会产生歧义。但局部变量就不一样了,如果一个局部变量定义了,但没有赋初始值,那他是完全不能使用的。所以不要认为Java任何情况下都存在诸如整型变量默认为0、布尔型变量默认为false等,这样的默认值规则。 ~~~ /** * Created by Mr.zihan on 2021/12/26. * connect to cowboy2014@qq.com * 局部变量初始化 * 1-区分类的初始化和局部变量的初始化。 * 2-类的初始化会有准备阶段和初始化阶段,准备阶段会把默认值初始化为零。初始化阶段会设置为程序员设置的值。 * 3-局部变量没有准备阶段,不会被初始化为零。 */ public class LocalVariableTest { int a; public static void main(String[] args) { LocalVariableTest localVariable = new LocalVariableTest(); int b; System.out.println(localVariable.a); // System.out.println(b);//编译不通过,局部变量没有“准备阶段”,b不会被初始化为0 } } ~~~