0
点赞
收藏
分享

微信扫一扫

局部变量的默认值的问题

AbrahamW 2022-09-06 阅读 120


局部变量的默认值的问题
昨天看了几道Java认证工程师的试题,有一道题如下。
局部变量boolean的默认值为
A、false 
B、true 
C、null 
D、无默认值,必初始化 
正确的答案是D,当时我的答案是A false,那么为什么我要选A呢,原因如下。
基本类型            默认值
boolean             false
char                   ‘\u0000’ (null)
byte                   (byte)0
short                  (short)0
int                       0
long                   0L
float                    0.0f
double                0.0d


但是我的答案是错的,在eclipse手动敲出了类似的代码,测试一下,再次证明答案D是对的。具体原因如下。
系统不会自动为局部变量赋初值,但对于成员变量,系统会自动赋初值。基本类型的值为0,复合类型的值为null。因此上述类型的默认值只使用于成员变量不适用于局部变量。

Last Modified:2011-12-25


举报

相关推荐

0 条评论