家人们,今天在运行一个Java程序的时候,发现在两个编译器里面的输出结果不一样。请问哪个友友能给出答案吗?(是关于垃圾回收的例子)
class Person
{
    public void finalize()
    {
        System.out.println("对象将被作为垃圾回收...");
    }
}
public class Example37 {
    public static void recycleWasetl()
    {
        Person p1=new Person();
        p1=null;
        int i=1;
        while(i<10)
        {
            System.out.println("方法1循环中");
            i++;
        }
    }
    //演示一个通知强制垃圾回收的方法
     public static void recycleWatel2()
     {
         Person p2=new Person();
         p2=null;
         //通过垃圾回收期进行强制垃圾回收
         System.gc();
         int i=1;
         while(i<10)
         {
             System.out.println("方法2循环中");
             i++;
         }
     }

    public static void main(String[] args) {
     recycleWasetl();
     recycleWatel2();
    }
}
在ideal中运行的时候每次结果都不相同,在Eclipse中的结果是相同的。
全部评论

相关推荐

10-11 17:45
门头沟学院 Java
走吗:别怕 我以前也是这么认为 虽然一面就挂 但是颇有收获!
点赞 评论 收藏
分享
杨柳哥:这不是普通人,那这个钱的是天才
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务