类的域(field ,数据成员)是基本类型时的默认值

若某个基本类型字段属于一个类,那么即使不明确(显式)进行初始化,也可以保证它们获得一个默认值。

基本类型    默认值

Boolean   false
Char       '\u0000'(null)
byte         (byte)0
short       (short)0
int              0
long           0L
float           0.0f
double       0.0d

一旦将变量作为类成员使用,就要特别注意由Java分配的默认值。这样做可保证基本类型的成员变量肯定得到了初始化(C++不具备这一功能),可有效遏止多种相关的编程错误。
然而,这种保证却并不适用于“局部”变量——那些变量并非一个类的字段。所以,假若在一个函数定义中写入下述代码:
int x;
那么x会得到一些随机值(这与C和C++是一样的),不会自动初始化成零。我们的责任是在正式使用x前分配一个适当的值。

如果忘记,就会得到一条编译期错误,告诉我们变量可能尚未初始化。这种处理正是Java优于C++的表现之一。许多C++编译器会对变量未初始化发出警告,但在Java里却是错误。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值