最近研究Java Cache实现,发现使用到了软引用(SoftReference),不太理解,查阅了JDK文档、代码以及几篇文章。做个小结,如有错误,欢迎指正。 之所以想学习一下Java的几种引用类型,原因有两个: 理解Java Cache实现、学习Java引用与Java垃圾回收机制的关系 内存资源 ...
分类:
编程语言 时间:
2016-08-22 12:38:37
阅读次数:
146
实现可以应用在spring项目上的自定义缓存的探索,java中lang.ref包的学习 ...
分类:
编程语言 时间:
2016-08-22 12:35:01
阅读次数:
236
Reference 是一个抽象类,而 SoftReference,WeakReference,PhantomReference 以及 FinalReference 都是继承它的具体类。接下来我们来分别介绍和分析强引用以及 java.lang.ref 包下各种虚引用的特性及用法。StrongRefer ...
分类:
编程语言 时间:
2016-07-16 11:32:55
阅读次数:
220
java中没有指针,到处都是引用(除了基本类型)。所以,当然,你肯定知道java的引用,并用了很久,但是是不是对此了解地比较全面?而这些引用有什么作用,且有什么不同呢?Java中有个java.lang.ref包,这里面都是描述引用对象的,包括了Reference,SoftReference,Weak ...
分类:
编程语言 时间:
2016-06-24 12:07:49
阅读次数:
191
软引用SoftReference 本文介绍对象的强、软、弱和虚引用的概念、应用及其在UML中的表示。 1.对象的强、软、弱和虚引用在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及(reachable)状态,程序才能使用它。从JDK ...
分类:
其他好文 时间:
2016-06-22 06:55:24
阅读次数:
163
当在 Java 2 平台中首次引入 java.lang.ref 包,其中包含 SoftReference 、 WeakReference 和 PhantomReference 三个引用类,引用类的主要功能就是能够引用仍可以被垃圾收集器回收的对象。在引入引用类之前,我们只能使用强引用(strong r ...
分类:
编程语言 时间:
2016-06-18 01:24:19
阅读次数:
184
机制:简单来说,她会帮助我们管理内存,防止内存溢出,另外一点也就相当于map,临时缓存些图片drawable让我们可以直接引用,很好了解决了OOM异常. 实现代码片段: [java]package com.Tianyou.Mobile.Common; import java.io.IOExcepti ...
分类:
其他好文 时间:
2016-06-18 00:03:09
阅读次数:
216
无论是python还是java,只要是vm,都会有StrongReference和WeakReference这两个概念,在不同的VM平台上,可能还会产生一些另外的 __Reference概念,比如JVM的 SoftReference 、PhantomReference 三点念念碎: 1.VM管理内存 ...
分类:
编程语言 时间:
2016-06-12 13:47:33
阅读次数:
307
写在前面: Reference本身是一个接口,表示一个引用,不能直接使用,有四个它的派生类供我们使用,它们分别是:SoftReference,WeakReference,PhantomReference,FinalizerReference .其中SoftReference,WeakReference和 PhantomReference的区别与使用Google一下已经有大把的介绍资料,因此本文主要说些你不知道的...
分类:
移动开发 时间:
2016-06-12 03:00:06
阅读次数:
286
这两天又重新学习了一下Reference,根据网上的资源做了汇总。 Java中的引用主要有4种: 强引用 StrongReference: Object obj = new Object(); obj就为一个强引用,obj=null后, 该对象可能会被JVM回收 软引用 SoftReference: ...
分类:
编程语言 时间:
2016-06-06 13:52:10
阅读次数:
228