思考:为什么局部变量需要显示赋值而成员变量不需要

  成员变量其赋值和取值的顺序具有不确定性,可以在方法调用前赋值,也可以在方法调用后赋值,其具体顺序是在运行时发生的,编译器确定不了;

  而局部变量,赋值、取值顺序确定。所以局部变量赋值使用,是一种设计约束,可以减少犯错的可能性。同时局部变量存放到栈帧的局部变量表中,可控的赋值和销毁有利于局部变量表空间复用;

posted @ 2022-05-03 23:13  FOEVERYANG  阅读(84)  评论(0编辑  收藏  举报