做了个小实验,代码如下:
class A{
private int x;
public int getX() {
return x;
}
public void setX(int x) {
this.x = x;
}
}
class B{
void fun(A a){
a.setX(3);
}
}
class C{
void fun(A a){
System.out.println(a.getX());
B b = new B();
b.fun(a);
System.out.println(a.getX());
}
}
public class Test {
public static void main(String[] args){
A a = new A();
a.setX(10);
C c = new C();
c.fun(a);
}
}
输出结果如下:
10
3
先做个记录,有时间再填坑。
---------------------------
好吧,我来填坑了。
参数为基本类型时:值传递
参数为对象类型时:传递的是该对象的地址
所以嘛,上面这个例子很好理解了
我居然忘掉了这个最最基本的知识点。。。。。。
本文通过一个简单的Java实验,探讨了对象作为参数时的传递机制。实验中,通过两个类的交互展示了对象传递的本质——地址传递,而非值传递。文章记录了一个关于Java对象传递的小实验,强调了当参数为对象类型时,实际上传递的是对象的引用。

被折叠的 条评论
为什么被折叠?



