默认值如下:
Boolean false
Char '\u0000'(null)
byte(byte)0
short (short)0
int 0
long0L
float0.0f
double0.0d
2. 局部变量声明之后,Java虚拟机就不会自动给它初始化为默认值,因此局部变量的使用必须先经过显式的初始化。
但是需要声明的是:对于只负责接收一个表达式的值的局部变量可以不初始化,参与运算和直接输出等其它情况的局部变量需要初始化。
初始化根据字面意思比较容易理解 就是给属性赋一个初始值比如你定义了一个属性整型的age:
private int age //这样算是定义了一个 但是并没有初始化
private int age=20//这样才算初始化
如果你在调用时 又没初始化它 有时候就会出现问题 比如:
public class Test {
public static void main(String...args){
int a
System.out.println(a)//编译出错 变量a没有初始化
}
}
基本数据类型作为类成员变量,无论初始化与否都不会出错。
作为函数代码里的变量,无论什么类型不初始化全部都会报错。
比如下面这样就不会报错了
public class Test {
private int a
public void print(){
System.out.println(a)
}
public static void main(String...args){
Test t = new Test()
t.print()
}
}
不过你要问的是什么是初始化啊 哈哈 看最前面一点就行了 后面看着糊涂就先暂时不用管吧 学到后面的时候 你再回过头来看 自然就懂了