本帖最后由 坚持不懈 于 2012-11-2 06:21 编辑
- class Demo
- {
- int x=3;
- public static void main(String[] args)
- {
- Demo d =new Demo();
- d.x=10;
- show(d);
- System.out.println(d.x);
- }
- public static void show(Demo d)
- {
- d.x=6;
- }
- }
- d在栈内存里产生 堆内存里产生一个int x=3
- d.x=10 堆内存里的int x 值现在是10
- 调用函数show在栈内存里产生,把整体d 传给show的参数
- show函数里改变的是d成员变量的值
- 最后输出是6
- class Demo
- {
- public static void main(String[] args)
- {
- int x = 4;
- show(x);
- System.out.println(x);
- }
- public static void show(int x)
- {
- x = 2;
- }
- }
- 在栈内存里产生一个 int x=4;
- show函数功能就是一个复制功能
- 最后结果输出4
复制代码 |