深入理解JVM虚拟机:JAVA引用类型

深入理解JVM虚拟机之:JAVA引用类型

引用类型可以说是整个Java开发的灵魂所在,如果没有合理的引用操作,那么就有可能产生垃圾问题,但是对于引用也需要有一些合理化的设计。在很多的时候并不是所有的对象都需要被我们一直使用,那么就需要对引用的问题做进一步的思考。从JDK1.2之后关于引用提出了四种方案: 

  • 强引用:当内存不足的时候,JVM宁可出现OutOfMemory错误停止,也需要进行保存,并且不会将此空间回收; 
  • 软引用:当内存不足的时候,进行对象的回收处理,往往用于高速缓存中; 
  • 弱引用:不管内存是否紧张,只要由垃圾产生了,那么立即回收; 
  • 幽灵引用:和没有引用是一样的。

1. 强引用

强引用是JVM默认的支持模式,即:在引用的期间内,如果该堆内存被指定的栈内存有联系,那么该对象就无法被GC所回收,而一旦出现了内存空间不足,就会出现“OutOfMemoryError”错误信息。 
范例:观察强引用。

package cn.test.demo;
public class TestDemo{
    public static void main(String[]args){
        Object obj=new Object();//强引用,默认的支持
        Object ref=obj;//引用传递
        obj=null;//断开了一个连接
        System.gc();
        System.out
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java Punk

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值