2013年2月4日

JVM垃圾回收策略(转载/整理)

摘要: 垃圾回收提供了内存管理的机制,使得应用程序不需要在关注内存如何释放,内存用完后,垃圾收集会进行收集,这样就减轻了因为人为的管理内存而造成的错误,比如在C++语言里,出现内存泄露时很常见的。Java语言是目前使用最多的依赖于垃圾收集器的语言,但是垃圾收集器策略从20世纪60年代就已经流行起来了,比如Smalltalk,Eiffel等编程语言也集成了垃圾收集器的机制。 GC就是负责在对象“不可达”的时候将对象回收,常见的语句例如:Object o = null; 而GC本身是如何工作的呢?当系统在创建对象的时候,即当我们使用new关键字创建一个对象的时候,GC就开始监控对象的地址、大小以及... 阅读全文

posted @ 2013-02-04 13:53 夜月升 阅读(1062) 评论(0) 推荐(0) 编辑

Java数据类型

摘要: Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。 基本类型可以分为三类,字符类型char,布尔类型boolean以及数值类型byte、short、int、long、float、double。数值类型又可以分为整数类型byte、short、int、long和浮点数类型float、double。JAVA中的数值类型不存在无符号的,它们的取值范围是固定的,不会随着机器硬件环境或者操作系统的改变而改变。实际上,JAVA 阅读全文

posted @ 2013-02-04 12:42 夜月升 阅读(141) 评论(0) 推荐(0) 编辑

Java中的几种引用类型(转载)

摘要: 转自http://blog.csdn.net/silentbalanceyh/article/details/4468368Java中的对象引用主要有以下几种类型: 1)强可及对象(strongly reachable): 可以通过强引用访问的对象,一般来说,我们平时写代码的方式都是使用的强引用对象,比如下边的代码段: StringBuilder builder= new StringBuilder(); 上边代码部分引用obj这个引用将引用内存堆中的一个对象,这种情况下,只要obj的引用存在,垃圾回收器就永远不会释放该对象的存储空间。这种对象我们又成为强引用(Strong refer... 阅读全文

posted @ 2013-02-04 12:11 夜月升 阅读(223) 评论(0) 推荐(0) 编辑

Java对象的生命周期(转载)

摘要: 转自http://blog.csdn.net/silentbalanceyh/article/details/4468368Java里面对象的生命周期 在JVM运行空间里面,对象整个声明周期大致分为以下几个阶段: 创建阶段(Creating)->应用阶段(Using)->不可视阶段(Invisible)->不可达阶段(Unreachable)->可收集阶段(Collected)->终结阶段(Finalized)->释放阶段(Free) 【1】创建阶段: 创建过程需要经过其中几步: 为对象分配内存空间 开始构造对象 递归调用超类的构造方法 进行对象实例初始化和 阅读全文

posted @ 2013-02-04 12:10 夜月升 阅读(198) 评论(0) 推荐(0) 编辑

导航