黑马程序员技术交流社区
标题:
我的总结不是很理想,还有谁能更详细的给我总结下吗,
[打印本页]
作者:
坚持不懈
时间:
2012-10-27 20:34
标题:
我的总结不是很理想,还有谁能更详细的给我总结下吗,
本帖最后由 坚持不懈 于 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
复制代码
作者:
张忠豹
时间:
2012-10-27 22:13
总结的很好啊!
在栈内存里产生一个 int x=4;
show函数功能就是一个复制功能 此时将show方法调用到栈内存中,其中,重新定义了一个x变量,这个变量只在show的内存区域内有效
.最后结果输出4
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2