我使用int a。属性创建了我的类(使用Activity) 该属性在onCreate()方法中自动初始化为0。
这是正常的吗?
答案 0 :(得分:2)
这很正常。你看,“int”是一种原始类型。它不是一个对象,因此,它不能保持“null”值。如果希望变量在onCreate()处为null,则必须将其类型更改为Object的Object表示形式。 “Integer”类表示基本类型“int”。
答案 1 :(得分:1)
onCreate()。
不,它未在onCreate()
中初始化。它是在实例化类的对象时初始化的。
0
是的。 int
的变量是基本类型只能保存数值,除非您以其他方式初始化它,它将被分配0
(与Integer
相反,也可以是null
)
参见文档:
https://docs.oracle.com/javase/tutorial/java/javaOO/index.html https://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html
答案 2 :(得分:1)
来自官方Java教程:
声明但未初始化的字段将设置为a 编译器合理默认。
检查每种数据类型的默认值:https://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html