Java中的隔离_Java中的隔离之岛

使用对象后,将使用垃圾收集器类从内存中释放该对象。基于不存在对该对象的引用这一事实,销毁了这些对象。垃圾收集器类在需要销毁的对象上调用“ finalize”函数。

什么是孤岛?

当两个对象“ a”和“ b”彼此引用,而其他任何对象都未引用它们时,则称为隔离岛。

它是一组互相引用的对象,但它们没有被引用,而只是其他应用程序的其他对象。

注–单个未引用对象也是孤立的孤岛。

让我们看一个例子-

示例public class Demo{

Demo i;

public static void main(String[] args){

Demo my_ob_1 = new Demo();

System.out.println("Demo object one has been created");

Demo my_ob_2 = new Demo();

System.out.println("Demo object two has been created");

my_ob_1.i = my_ob_2;

my_ob_2.i = my_ob_1;

my_ob_1 = null;

my_ob_2 = null;

System.gc();

}

@Override

protected void finalize() throws Throwable{

System.out.println("The finalize method has been called on the object");

}

}

输出结果Demo object one has been created

Demo object two has been created

The finalize method has been called on the object

The finalize method has been called on the object

名为Demo的类包含主要功能。在此,将创建Demo类类型的变量。创建Demo类的实例,然后将第二个对象分配给第一个对象的Demo对象。第二个dobject也以相反的方式进行相同的操作。现在,将这两个对象都分配为null并调用'System.gc'函数。现在,“ finalize”功能已被覆盖。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值