对象引用和值引用的区别

public static void main(String[] args){
		ArrayList arrayList=new ArrayList();
		//(1)Boy aBoy=new Boy("z");
		for(int i=0;i<20;i++){
			//(2)Boy aBoy=new Boy("z");
			arrayList.add(aBoy);
		} 
		((Boy)arrayList.get(1)).setName("d");
		System.out.print( ((Boy)arrayList.get(1)).getName());
		System.out.print( ((Boy)arrayList.get(2)).getName());
	}

8种基本类型的引用都是值引用;

那么Java类的引用是 值引用还是对象引用呢?

看情况;

代码中(1)的是对象引用,代码(2)就是值了;为什么;

从打印结果可以看出,

(1)注释打开,对象引用 指向一个Boy;

(2)注释打开,值引用 指向20个Boy,list里的每个boy都是独一无二的;都是New出来的

猜你喜欢

转载自alafqq.iteye.com/blog/2287113
今日推荐