成员变量(全局变量)属于对象,和对象一起保存在堆中,每次jvm初始化类的时候,成员变量都会跟着一起初始化。可以把这个当作规矩来记:成员变量(全局变量)可以不用初始化,系统默认给初始化,局部变量必须由程序员来初始化
例子:(from 百度)
1、java中有两种变量,局部变量和成员变量。成员变量就是定义在类中,方法外,全局的变量。局部变量使用前必须初始化,否则编译报错。成员变量可以不初始化,虚拟机会给他默认值。
class test {
//定义成员变量b
public static int b;
public static void main(String[] args) {
System.out.println(“hello java”);
//局部变量i
int i;
//这里如果直接输出会编译报错
i=0;
System.out.println(++i);
//这里直接输出b是可以的,默认为0
System.out.println(b);
}
}
2、局部变量的初始化可以认为是分配初始空间,也就是在内存中要开辟一块区域来存这个东西,不初始化是没有内存空间的,也就不能使用
--------------------------------------------------------------------------------------一些菜鸟的个人理解,如果哪个地方有不对的,大家请多多指点。