输出的是10;
在堆中你new了Demo1这个对象,假设有一个地址为0x123
在栈中存在一个引用对象d,这是,堆中就将地址为0x123赋给了d; 这时Demo1 d = new Demo1();创建完成
上面int x = 12;属于全局变量了,他在静态数据区中
method(int x)方法直接存在了方法区中
对象d调用方法区中的method(int x),传的值是5,方法中变量名x;
x+=x; 这个x会先在方法区中找到x,而且你穿的值是5;
当这个变量存在的时候,那么x就不需要再去栈中需找x了;
直接运算了 |