易截截图软件、单文件、免安装、纯绿色、仅160KB

基于Java 2平台的引用类使用指南

Java 2 平台引入了 java.lang.ref 包,其中包括的类可以让您引用对象,而不将它们留在内存中。这些类还提供了与垃圾收集器(garbage collector)之间有限的交互。Peter Haggar 在本文中分析了 SoftReference 、 WeakReference 和 PhantomReference 类的功能和行为,并就这些类的使用给出了一些编程风格上的建议。
当在 Java 2 平台中首次引入 java.lang.ref 包(其中包含 SoftReference 、 WeakReference 和 PhantomReference 类)时,它的实用性显然被过分夸大了。它包含的类可能是有用的,但这些类具有的某些局限性会使它们显得不是很有吸引力,而且其应用程序也将特别局限于解决一类特定的问题。
垃圾收集概述
引用类的主要功能就是能够引用仍可以被垃圾收集器回收的对象。在引入引用类之前,我们只能使用强引用(strong reference)。举例来说,下面一行代码显示的就是强引用 obj :
Object obj = new Object();
obj 这个引用将引用堆中存储的一个对象。只要 obj 引用还存在,垃圾收集器就永远不会释放用来容纳该对象的存储空间。
当 obj 超出范围或被显式地指定为 null 时,垃圾收集器就认为没有对这个对象的其它引用,也就可以收集它了。然而您还需要注意一个重要的细节:仅凭对象可以被收集并不意味着垃圾收集器的一次指定运行就能够回收它。由于各种垃圾收集算法有所不同,某些算法会更频繁地分析生存期较短的对象,而不是较老、生存期较长的对象。因此,一个可供收集的对象可能永远也不会被回收。如果程序在垃圾收集器释放对象之前结束,这种情况就可能会出现。因此,概括地说,您永远无法保证可供收集的对象总是会被垃圾收集器收集。
这些信息对于您分析引用类是很重要的。由于垃圾收集有着特定的性质,所以引用类实际上可能没有您原来想像的那么有用,尽管如此,它们对于特定问题来说还是很有用的类。软引用(soft reference)、弱引用(weak reference)和虚引用(phantom reference)对象提供了三种不同的方式来在不妨碍收集的情况下引用堆对象。每种引用对象都有不同的行为,而且它们与垃圾收集器之间的交互也有所不同。此外,这几个新的引用类都表现出比典型的强引用“更弱”的引用形式。而且,内存中的一个对象可以被多个引用(可以是强引用、软引用、弱引用或虚引用)引用。在进一步往下讨论之前,让我们来看看一些术语:
强可及对象(strongly reachable):可以通过强引用访问的对象。
软可及对象(softl


相关文档:

解析Java类和对象的初始化过程

类的初始化和对象初始化是 JVM 管理的类型生命周期中非常重要的两个环节,Google 了一遍网络,有关类装载机制的文章倒是不少,然而类初始化和对象初始化的文章并不多,特别是从字节码和 JVM 层次来分析的文章更是鲜有所见。
本文主要对类和对象初始化全过程进行分析,通过一个实际问题引入,将源代码转换成 JVM 字节码后, ......

封装给java使用的 web报表 rm webrm 报表1.0.0.1版

版本:1.0.0.1 
http://download.csdn.net/source/1856731
完全兼容 前一个版本
升级时同时更新 RMVIEWP.CAB、rmview1.0.0.1.jar(删除前一个版本的jar包,名称为:RMVIEW.JAR)
使用方法不变,无缝升级。
更新日志:
1. 修正部分用户使用中用到插件的分割符号,致使插件不能正常使用,本版中间使用xml格 ......

Java输出JVM和操作系统的相关属性 zz

主要是利用Java提供的util包中的Properties类。废话不多说,直接看代码:
view plaincopy to clipboardprint?
import java.util.*;
public class YourJavaProperties {
public static void main(String args[]){
Properties props=System.getProperties();
System.out.println("Java的运行环境版本:"+props.getP ......

六、java的面向对象程序设计(详解equals方法)

六、java的面向对象程序设计(详解equals方法)
/**
 * 详解equals方法. 
 */
class Equals
{
 private int i;
 public void setI(int i)
 {
  this.i = i;
 }
 public Equals()
 {
  i = 1;
 }
 public Equals(int i)
 { ......

java总结 第五章

第五章 数组
数组时多个相同类型数据的组合
数组属于引用类型 数组型数据为对象(object)
每个元素相当于该对象的成员变量
数组的元素可以是任何数据类型 包括基本类型和引用类型
int a[];
Mydate a[]; 引用类型数组
java中声明数组时不能指定其长度 int a[5];非法
java中使用new来创建数组对象
int a[]=new int[10 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号