jvm-LMLPHP

public class Demo {
    /**
     * 成员变量(俗称全局变量),//有缺省值为0
     *      静态变量(也称类变量),带static的
     *      实例变量,不带static的
     * 局部变量 //无缺省值,需要初始化
     */
    static int x; //类变量,有缺省值为0
    int y ;//实例变量
    public static void main(String args[]) {
        System.out.println(x);//访问类变量,值=0
        int x=5;//局部变量,必须初始化
        System.out.println(x);//访问局部变量,值=5
        Demo demo = new Demo();//创建实例
        System.out.println(demo.y);//通过实例访问实例变量,值=0
    }
}

Java中变量分为静态变量,全局变量,局部变量。
他们在JVM中存储的位置如下:
静态变量    位于方法区
全局变量    作为对象的一部分,保存在堆中。
局部变量(临时变量)    保存于栈中,栈随线程的创建而被分配。

02-17 15:14