今天看代码,里面有一个类java.lang.ref.SoftReference把小弟弄神了,试想一下,接触java已经有3年了哇,连lang包下面的类都不了解,怎么混。后来在网上查资料,感觉收获颇多,现记录如下。 对象的强、软、弱和虚引用在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那....
分类:
编程语言 时间:
2015-08-27 18:24:21
阅读次数:
182
前言概述 在JDK1.2以前的版本中,当一个对象不被任何变量引用,那么程序就无法再使用这个对象。这就像在日常生活中,从商店购买了某样物品后,如果有用,就一直保留它,否则就把它扔到垃圾箱,由清洁工人收走。一般说来,如果物品已经被扔到垃圾箱,想再把它捡回来使用就不可能了。 但有时候情况并不这么简单,你可...
分类:
编程语言 时间:
2015-08-27 15:03:55
阅读次数:
241
Java引用总结--StrongReference、SoftReference、WeakReference、PhantomReference1 Java引用介绍 Java从1.2版本开始引入了4种引用,这4种引用的级别由高到低依次为: 强引用 > 软引用 > 弱引用 > 虚引用⑴强引用(Strong...
分类:
编程语言 时间:
2015-08-27 00:05:25
阅读次数:
281
Java从1.2版本开始引入了4种引用,这四种引用的级别由高到低依次为:强引用>软引用>弱引用>虚引用。
一、强引用(StrongReference):
强引用是使用最普遍的引用,一般我们将对象初始化之后就是一个强引用。当一个对象具有强引用时,JVM不会对它进行垃圾回收。当内存不足时,宁愿抛出OutofMemoryError,让程序异常终止,也不会回收强引用。
二、软...
分类:
编程语言 时间:
2015-08-26 01:54:10
阅读次数:
267
一、java.lang.ref
java.lang.ref包规范(参看JDK API中所述内容,本文就不贴出来了)有几个点很重要。
1. 这个包中的类使得应用程序可以与JVM垃圾收集器进行一些交互;
2. 引用的可达性逐渐降低:强引用、弱引用、软引用、虚引用;
3. 自动清除引用:只有弱引用和软引用会自动清除引用(这表明虚引用不会自动清除),清除的时机是将引...
分类:
编程语言 时间:
2015-08-15 20:04:03
阅读次数:
3423
从JDK1.2版本开始,把对象的引用分为四种级别,从而使程序能更加灵活的控制对象的生命周期。这四种级别由高到低依次为:强引用、软引用、弱引用和虚引用。 ? ? 1.强引用 ??? 以前我们使用的大部分引用实际上...
分类:
编程语言 时间:
2015-08-02 23:41:18
阅读次数:
472
1、强引用(StrongReference)
强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。如下:
[java] view
plaincopyprint?
Object o=new Object(); // 强引用
当内存空间不足,Java虚拟机宁愿抛出OutO...
分类:
编程语言 时间:
2015-07-28 13:04:24
阅读次数:
212
截止现今版本,Java的引用分为四种:强引用、软引用、弱引用和虚引用(又称幽灵引用),在JDK1.2中引入了这四种引用,使得开发中可以在一定程度上虚范围的控制Java对象的生命周期。之所以说虚范围,是因为即使使用了非强引用,最终的垃圾回收发起也都是由JVM垃圾回收机制决定的,但是这种改变是一种进步,使我们在应用中更加灵活。
强引用:
一般在Java开发中使用的都是强引用,之所以称之为...
分类:
编程语言 时间:
2015-07-24 20:58:56
阅读次数:
226
Java存在着几种引用:强引用,SoftReference,WeakReference和PhantomRefrence。可以简单的称为:强、软、弱、虚。引用的强度是依次递减的。 强引用意味着对象还要被使用,是不可以被回收的。 软引用可以被回收,...
分类:
编程语言 时间:
2015-07-22 13:24:46
阅读次数:
135
一、引言 Java中的引用类型由四种情况,强引用、软引用、弱引用、虚引用。关于这些的介绍可以参见鄙人另外一篇博文。 http://www.cnblogs....
分类:
编程语言 时间:
2015-07-17 20:30:32
阅读次数:
211