http://community.csdn.net/Expert/TopicView1.asp?id=3222720
解决方案 »
- 求问一个简单的正则表达式
- java 求自动运行的方法
- String截取过程
- 我的程序怎么不能运行呀,求救!
- package
- 怎么样才能得到一个字符串在屏幕上显示的长度(是指占的像素,而不是length)
- 请问哪儿有jdk1.1.x的API文档可供下载?
- Thinking in Java 的一个例子,请高手给讲解一下
- 我下载java2,不知如何打开
- 初学者对于java继承、多态,子类对象的内存分配的一些问题,百度了好多,但感觉没有系统的,在此提问,希望前辈们传到授业解惑
- 100分求助!!如何表格多列头和多行头?如何合并单元格?谢谢大侠!!
- 有谁用过jakarta-poi导EXCEL吗?请教几个问题!
c
第一次创建的x2和x3都可以被gc了14
c/e
上述的结果x2=x3=x4, x5=null和x5=x4都能造成一个对象没有被引用15
e
不能确定doStuff2(X x) 有没有保存引用
5.产生X2的instance2
6,7把两个实例转移到两个属性上
8.产生新实例instance3
9.让x3也指向instance3
答案是a,因为没有对象丢失14题x2 ----> instance 1
x3 ----> instance 2
x5 ----> instance 2
x3 ----> instance 1
x4 ----> instance 1
x2 ----> nulla. x3 ----> null(此时有x4指向instance 1)
b. x4 ----> null(此时有x3指向instance 1)
c. x5 ----> null(造成instance 2没有引用指向)
d. x3 ----> instance 1(不会产生变化)
e. x5 ----> instance 1(造成instance 2没有引用指向)
所以答案是c,e15题答案是b,16行让13行产生的对象丢失我的答案和 TinyJimmy 稍有差异,如有错误,欢迎指正.
第一题:
虽然有
6. x2.x = x3;
7. x3.x = x2;
引用了这两个对象, 但是经过
8. x2 = new X2();
9. x3 = x2;
这两个对象的所属对象已经失去了引用, 所以可以被 gc() 了第三题:
因为不能确定 doStuff2(X x) 的主体
不知道里面有没有将这个对象加入某个容器(假设)等类似保留对象的操作
所以不能确定
X3 x2 = new X3();
X3 x3 = new X3();
X3 x5 = x3;
x3 = x2;
产生了一个循环引用, 但是这两个对象最后都没有被其他对象引用, 是可以gc的15.
可以排除法, 证明x/y可以被引用或不被引用