为什么Java成员变量声明时可以不用赋值,而局部变量声明时一定需要赋值
首先,任何变量在C语言中不赋值的话,会是乱码的形式,可能有安全问题。所以java修正了这点,对于局部变量强制让你赋值。至于为什么成员变量有自己的初始值,而不需要强制赋值,那是因为new对象的时候,构造函数帮你初始化了。一个典型的代表是:为什么空构造函数啥也不做也非得存在那么搞笑?虽然看起来是空的什么都没做,但底层做了很多见不到的工作,不单只是为了申请内存,在底层里申请完内存后就同时开始初始...
原创
2018-03-18 23:21:50 ·
6766 阅读 ·
1 评论