声明原语/对象时,它们是否已初始化?
哪些是默认值?
类成员和本地字段的行为是什么?
类成员的对象声明呢?
如下所述,这些是默认值:
Data Type - Default Value (for fields) byte 0 short 0 int 0 long 0L float 0.0f double 0.0d char '\u0000' String (or any object) null boolean false
请注意,对象被初始化为null
声明原语/对象时,它们是否已初始化?
哪些是默认值?
类成员和本地字段的行为是什么?
类成员的对象声明呢?
如下所述,这些是默认值:
Data Type - Default Value (for fields) byte 0 short 0 int 0 long 0L float 0.0f double 0.0d char '\u0000' String (or any object) null boolean false
请注意,对象被初始化为null
的默认值int
is0
和 that 是它在 JavaSE 和 JavaEE 中都将具有的值,除非它被分配了另一个值。
Java(或任何其他原语)中不能有未初始化的int
类成员。
在您的示例中,您显示的int
是类成员,在另一个示例中,它是局部变量,这就是区别。
对于class members
JVM 将放置默认值,因为local variables
它使您在访问变量之前分配和初始值。
您可以查看原始数据类型Default Values
中的部分以获取有关类成员默认值的更多信息。