为什么局部变量需要显式赋值,而成员变量可以不需要显式赋值
在网上搜的结果都是相同的一句话,配一段毫无关系的代码,说明不了问题。
这里给出原因:成员变量其赋值和取值的顺序具有不确定性,可以在方法调用(取值)前赋值,也可以在方法调用(取值)后赋值,其具体顺序是在运行时发生的,编译器确定不了。而局部变量,赋值、取值顺序确定。所以局部变量赋值使用,是一种设计约束,减少犯错的可能性。
以及一个可以准确说明问题的例子:
public class InstanceI...
原创
2020-05-07 14:54:03 ·
614 阅读 ·
0 评论