对象与引用

对象与引用

先看这个例子:

int[] a={5,5,5};

int[] b=a;

b[1]=45;

这是输出a数组的值会如下所示: 5,45,5

这是因为a和b指向的是同一个对象{5,5,5},a和b都被称为是该对象的引用,也就是说a和b操作的是同一个对象

空对象

int[] a={5,5,5};

int[] b=a;

a=null;

将a置为null,也就是意味着a将不会指向任何对象


由此也就会常因此出现 空指针错误 NullPointerException
如下:

int[] a={11,15,14};
a=null;
a[0]=12; //出错

a置为null以后就不会指向任何对象,也就无法访问a[0]

失去引用的对象

int[] a={8,8,8};

a=new int[4];

a本来是指向{8,8,8}这个对象,然后a又被置为指向int[4]这个对象,那么{8,8,8}就无人引用了,也就是失去引用的对象,会被java回收机制回收删除

原文地址:https://www.cnblogs.com/xtuxiongda/p/8672138.html