在下列函数中我分别引用了p1,p2,并使用了赋值语句p1=p2;
由此可以在结果中看到p1,p2的变化。
1.
package mn;
class point {
int x;
int y;
void set(int m,int n){
x=m;
y=n;
}
}
2.
int x;
int y;
void set(int m,int n){
x=m;
y=n;
}
}
package mn;
public class Example {
public static void main(String args[]){
point p1;
point p2;
p1=new point();
p2=new point();
System.out.println("p1的引用"+p1);
System.out.println("p2的引用"+p2);
p1.set(100,200);
p2.set(300,400);
System.out.println("p1的坐标"+"("+p1.x+","+p1.y+")");
System.out.println("p2的坐标"+"("+p2.x+","+p2.y+")");
p1=p2;
System.out.println("p1的引用"+p1);
System.out.println("p2的引用"+p2);
System.out.println("p1的坐标"+"("+p1.x+","+p1.y+")");
System.out.println("p2的坐标"+"("+p2.x+","+p2.y+")");
public static void main(String args[]){
point p1;
point p2;
p1=new point();
p2=new point();
System.out.println("p1的引用"+p1);
System.out.println("p2的引用"+p2);
p1.set(100,200);
p2.set(300,400);
System.out.println("p1的坐标"+"("+p1.x+","+p1.y+")");
System.out.println("p2的坐标"+"("+p2.x+","+p2.y+")");
p1=p2;
System.out.println("p1的引用"+p1);
System.out.println("p2的引用"+p2);
System.out.println("p1的坐标"+"("+p1.x+","+p1.y+")");
System.out.println("p2的坐标"+"("+p2.x+","+p2.y+")");
}
}
}
![](https://i-blog.csdnimg.cn/blog_migrate/f0b2134469a298d37c7f07a560f5d1b3.png)