java类成员默认值

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

### Java 成员变量的默认初始化值 在 Java 中,成员变量会由 JVM 自动分配默认的初始化值。这些默认值取决于数据类型的性质以及其存储的方式。以下是不同数据类型对应的默认初始化值: #### 基本数据类型的默认值 - **byte**: 默认值为 `0`[^1]。 - **short**: 默认值为 `0`。 - **int**: 默认值为 `0`。 - **long**: 默认值为 `0L`。 - **float**: 默认值为 `0.0f`。 - **double**: 默认值为 `0.0d`。 - **char**: 默认值为 `\u0000` (即空字符)。 - **boolean**: 默认值为 `false`。 #### 引用数据类型的默认值 对于引用类型(如对象),默认值为 `null`。这意味着如果未显式初始化引用类型的成员变量,在访问它之前可能会抛出 `NullPointerException`。 #### 静态成员变量与实例成员变量的区别 无论是静态成员变量还是实例成员变量,默认情况下都会按照上述规则进行初始化。需要注意的是,静态成员变量会在类加载时完成初始化,而实例成员变量则是在创建对象时完成初始化[^2]。 #### 初始化顺序 当一个类被加载并实例化时,成员变量的初始化遵循以下顺序: 1. 执行默认初始化。 2. 如果存在显示初始化语句,则执行显示初始化。 3. 调用父类构造方法 (`super`) 完成继承部分的初始化。 4. 按照代码中定义的顺序依次执行构造代码块中的逻辑。 5. 最后执行当前类的构造函数[^3]。 #### 示例代码展示 下面是一个简单的例子来说明成员变量如何获得默认值: ```java class Example { byte b; short s; int i; long l; float f; double d; char c; boolean bool; String str; public static void main(String[] args) { Example example = new Example(); System.out.println("Byte: " + example.b); // 输出 0 System.out.println("Short: " + example.s); // 输出 0 System.out.println("Int: " + example.i); // 输出 0 System.out.println("Long: " + example.l); // 输出 0 System.out.println("Float: " + example.f); // 输出 0.0 System.out.println("Double: " + example.d); // 输出 0.0 System.out.println("Char: " + example.c); // 输出 空白字符 (\u0000) System.out.println("Boolean: " + example.bool);// 输出 false System.out.println("String: " + example.str); // 输出 null } } ``` 此代码展示了各种基本数据类型及其对应默认值的行为。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值