![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
donglinlucky
这个作者很懒,什么都没留下…
展开
-
Java:对象的强、软、弱和虚引用
本文介绍对象的强、软、弱和虚引用的概念、应用及其在UML中的表示。 1.对象的强、软、弱和虚引用在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及(reachable)状态,程序才能使用它。从JDK 1.2版本开始,把对象的引用分为4种级别,从而使程序能更加灵活地控制对象的生命周期。这4种级别由高到低依次为:强引用、转载 2008-08-28 22:58:00 · 4527 阅读 · 0 评论 -
用弱引用堵住内存泄漏
弱引用使得表达对象生命周期关系变得容易了虽然用 Java™ 语言编写的程序在理论上是不会出现“内存泄漏”的,但是有时对象在不再作为程序的逻辑状态的一部分之后仍然不被垃圾收集。本文介绍了无意识的对象保留的常见原因,并展示了如何用弱引用堵住泄漏。 要让垃圾收集(GC)回收程序不再使用的对象,对象的逻辑 生命周期(应用程序使用它的时间)和对该对象拥有的引用的实际 生命周期必须是相同的。在大多数时转载 2008-08-28 23:30:00 · 833 阅读 · 0 评论 -
HotSpot JVM垃圾收集原理
HotSpot JVM垃圾收集原理 目的: 本文描述了Sun公司的HotSpot Java虚拟机的垃圾收集工作原理。以便为更多Java爱好者在设计,开发以及部署时带来更多便利和益处。摘要: JVM规范中要求任何实现JVM的实现必须要提供一个能够回收未被使用内存的机制。这个机制就是垃圾回收(GC-Garbage Collection)。然而垃圾回收机制转载 2008-08-28 23:53:00 · 776 阅读 · 0 评论 -
JVM调优总结
一、相关概念 基本回收算法 引用计数(Reference Counting)比较古老的回收算法。原理是此对象有一个引用,即增加一个计数,删除一个引用则减少一个计数。垃圾回收时,只用收集计数为0的对象。此算法最致命的是无法处理循环引用的问题。 标记-清除(Mark-Sweep)此算法执行分两阶段。第一阶段从引用根节点开始标记所有被引用的对象,第二阶段遍历整个堆,把未标记的对象清除。此转载 2008-08-31 13:16:00 · 591 阅读 · 0 评论 -
Java类加载内幕详细讲解
类加载是java语言提供的最强大的机制之一。尽管类加载并不是讨论的热点话题,但所有的编程人员都应该了解其工作机制,明白如何做才能让其满足我们的需要。这能有效节省我们的编码时间,从不断调试ClassNotFoundException, ClassCastException的工作中解脱出来。这篇文章从基础讲起,比如代码与数据的不同之处是什么,他们是如何构成一个实例或对象的。然后深入探讨java虚拟机(转载 2008-09-02 20:44:00 · 625 阅读 · 0 评论 -
Java对象池技术的原理及其实现
Java对象的生命周期分析 Java对象的生命周期大致包括三个阶段:对象的创建,对象的使用,对象的清除。因此,对象的生命周期长度可用如下的表达式表示:T = T1 + T2 +T3.其中T1表示对象的创建时间,T2表示对象的使用时间,而T3则表示其清除时间。由此,我们可以看出,只有T2是真正有效的时间,而T1、T3则是对象本身的开销。下面再看看T1、T3在对象的整个生命周期中所占的比例。转载 2008-09-08 20:18:00 · 500 阅读 · 0 评论