class TestA {
TestB b; TestA() {
b = new TestB(this);
}
}class TestB {
TestA a;
TestB(TestA a){
this.a = a;
}
}class TestAll {
public static void main(String[] args){
new TestAll().makeThings();
//...code continues on
}
void makeThings() {
TestA test = new TestA();
}
}
这个程序中 在 //...code continues on 这句话之前,变量 a 和 b 都被垃圾回收掉了,请问这是为什么??我不理解
解决方案 »
- 向下转型的问题
- 求一个日期算法,着急
- 关于JNI在web上应用的问题???
- 自以为是高手,初次接触java,是看了 java.lang.reflect.Proxy 的newProxyInstance方法 的源码30分钟后, 头晕了。
- 绘图问题
- 如何上传本地文件
- 在 JNI 中,调用 env->FindClass 如何检索一个内部类?
- 线程中repaint和paint作用是什么?我想让一个线程写字,另一线程擦除,为什么不起作用?代码是。。
- 求助,帮忙看看这个程序有什么问题。
- 关于正则表达式,
- 对于panel的重画用的是构造函数的重载,为什么new的新的panel上的组件无法显示?
- 如何用java实现下列四种图形?
一个在栈中,一个在堆中形参在方法执行完后就会从栈中回收掉
而成员变量要在对象被回收时才被回收
这明显是两个对象相互引用
这样也会被垃圾回收吗?