简单案列:
public class ObjectEvaluate{
public static void main(String[]args){
Tank t1=new Tank();
Tank t2=new Tank();
t1.level=9;
t2.level=47;
System.out.println("1:t1.level="+t1.level+",t2.level="+t2.level);
//System.out.println("1:t1="+t1.hashCode()+",t2="+t2.hashCode());
t1=t2;
System.out.println("2:t1.level="+t1.level+",t2.level="+t2.level);
//System.out.println("2:t1="+t1.hashCode()+",t2="+t2.hashCode());
t1.level=32;
System.out.println("3:t1.level="+t1.level+",t2.level="+t2.level);
//System.out.println("3:t1="+t1.hashCode()+",t2="+t2.hashCode());
}
}
/**内部类*/
class Tank{
int level;
}
/** Output:
1:t1.level=9,t2.level=47
2:t1.level=47,t2.level=47
3:t1.level=32,t2.level=32
*/
注解:
将一个对象赋值给另一个对象,实际是将“引用”从一个地方复制到另一个地方,所以上述案列t1=t2实际上都是指向原本只有t2指向的那个对象
本文通过一个简单的Java案例,深入解析了对象引用的概念及其工作原理。演示了当一个对象被另一个对象引用时,实际上发生了什么,并解释了修改一个引用如何影响到另一个引用指向的对象。
130

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



