java对象的理解

1、看生成几个对象,就看new了几次,

Stu s1=new Stu(“张三”);

Stu s2=s1;-à这里也是生成了一个对象,只不过s1和s2指向了同一个对象

2、Stu s1=new Stu(“张三”);

Stu s2= new Stu(“李四”);

s1=s2;这里生成了两个对象,但是s2赋值给了s1,这是“zhangsna“这个对象就没有引用了,垃圾回收器就回收(程序员无法左右垃圾回收器的启动,System.gc()这个函数只是“建议”垃圾回收器启动,启动不启动还是两码事)

3、Stu s3=null;空对象à栈中有个引用,但是堆中没有对象。

s3.name=“张三”à这里会报空指针异常,创建空对象不会报错,但是空对象再使用成员属性和成员方法的时候回报空指针异常。

posted @ 2012-11-17 20:21  AZ_mxl  阅读(194)  评论(0)    收藏  举报