摘要: finalize是在对象回收前做一些清扫工作,以及可清理栈上的内存,比如调用本地方法可能在栈上创建对象。即使对象不可达,也并不是非死不可,还是可以抢救一下,当一个对象没有与GCroot相连的引用链时,它将被第一次标记,然后判断对象是否有必要执行finalize()方法。当对象没有覆盖finalize 阅读全文
posted @ 2017-04-28 23:31 konami 阅读(3091) 评论(0) 推荐(0) 编辑
摘要: 有这样一类对象:当内存空间还足够,则可保留在内存中;如果内存空间在gc之后还是非常紧张,则可抛弃这些对象。很多系统的缓存功能适合这样的场景,所以jdk1.2以后 java将引用分为了强引用、软引用、弱引用、虚引用四种,引用强度一次减弱。 强引用:类似Object a=new Object()这类,永 阅读全文
posted @ 2017-04-28 23:29 konami 阅读(4398) 评论(0) 推荐(0) 编辑