关于内部类的问题 比如说有个非静态的内部类,它的实例被引用,但是它的外部类实例没有被引用,垃圾回收会不会回收外部类的对象。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 package myjava;/** * Created by IntelliJ IDEA. * User: Administrator * Date: 2006-11-27 * Time: 14:49:07 * To change this template use File | Settings | File Templates. */public class TestFinalize { String id ; TestFinalize(String id){ this.id =id; ti = new TestInner(id); System.out.println("TestFinalize constructs:"+id); } public void finalize(){ System.out.println("TestFinalize finalize:" + id); } public class TestInner{ String a="" ; TestInner(String id){ a = id; } public void finalize(){ System.out.println("TestInner finalize:" + a); } } public TestInner ti; public static void main(String[] args){ TestFinalize tf1 = new TestFinalize("one"); TestFinalize tf2 = new TestFinalize("two"); TestInner ti = tf1.ti; tf1 =null; System.out.println("System.gc(); fisrt"); System.gc(); System.out.println(tf1); System.out.println(tf2); tf2 = null; System.out.println("System.gc(); second"); System.gc(); }}结果:TestFinalize constructs:oneTestFinalize constructs:twoSystem.gc(); fisrtnullmyjava.TestFinalize@19821fSystem.gc(); secondTestInner finalize:twoTestFinalize finalize:two好像没有被回收 为什么Vector里边不能放基本数据类型,为什么? java提取div中的内容 j2se载入完成前加入图片和进度条 java复制生成的pdf文件打不开 高分求解啊,大家帮帮忙啊. 各位大侠:求教关于JAVA HashTable 的一个问题? 今天比较高兴,再帖一段:做自己的组件。另请看本人下面的关于字符集编码一文,给个评价! jbuilder 里怎么支持鼠标滚论呀?好象要个补丁! JSP + JDBC + ACCESS 中的数据添加问题!急! 怎么配置我的JBuilder5。0?急,急,急 一个将字符写人文件的问题 如何设置所调用的jar包?
* Created by IntelliJ IDEA.
* User: Administrator
* Date: 2006-11-27
* Time: 14:49:07
* To change this template use File | Settings | File Templates.
*/
public class TestFinalize {
String id ;
TestFinalize(String id){
this.id =id;
ti = new TestInner(id);
System.out.println("TestFinalize constructs:"+id);
}
public void finalize(){
System.out.println("TestFinalize finalize:" + id);
}
public class TestInner{
String a="" ;
TestInner(String id){
a = id;
}
public void finalize(){
System.out.println("TestInner finalize:" + a);
}
}
public TestInner ti;
public static void main(String[] args){
TestFinalize tf1 = new TestFinalize("one");
TestFinalize tf2 = new TestFinalize("two");
TestInner ti = tf1.ti;
tf1 =null;
System.out.println("System.gc(); fisrt");
System.gc();
System.out.println(tf1);
System.out.println(tf2);
tf2 = null;
System.out.println("System.gc(); second");
System.gc();
}
}结果:
TestFinalize constructs:one
TestFinalize constructs:two
System.gc(); fisrt
null
myjava.TestFinalize@19821f
System.gc(); second
TestInner finalize:two
TestFinalize finalize:two好像没有被回收