我想这个例子能解释你的疑问: class A { int i ; A (int i){ this.i = i; } }class ReferenceTest { public static void main (String[] args ) { A a = new A(1); A b = a; b.i = 2; System.out.println("b.i =" + b.i); System.out.println("a.i =" + a.i); } }结果:b.i = 2 a.i = 2其实b只是a的一个地址引用,它们指向内存中的区域是一样的.
引用的传递实际上是对引用的值进行传递,即对传址的一种包装。
class A {
int i ;
A (int i){
this.i = i;
}
}class ReferenceTest {
public static void main (String[] args ) {
A a = new A(1);
A b = a;
b.i = 2;
System.out.println("b.i =" + b.i);
System.out.println("a.i =" + a.i);
}
}结果:b.i = 2
a.i = 2其实b只是a的一个地址引用,它们指向内存中的区域是一样的.
我们还年轻牛奶会有的奶牛也会有的
可天天在 csdn 混这些会有吗 ??
对,对b的改动既对o的改动!!