《Java 編程思想》005 初始化和清理

最近工作任務繁重,加上頭疼的毛病,筆記工作減緩。補上筆記。

與您共讀《Java 編程思想》 Page76~108

《Java編程思想》第五章還是很值得一讀的。

本章講解了Java中的構造函數、this關鍵字及垃圾回收等。

垃圾回收器是如何工作的

  1. 停止複製機制(stop-and-copy),暫停程序,將存活的對象複製到另一個堆,沒有被複制的都是垃圾。複製到新的堆是保持緊湊排列。複製之後要修正指針。複製式回收器缺點:效率低下,空間浪費。程序穩定後垃圾極少。
  2. 標記-清理模式(mark-and-sweep) 從堆棧和靜態存儲區出發,遍歷所有引用,找出存活的對象,設置標記,標記完成進行清理。
  3. 代數(generation count)停止複製,在廢棄塊中進行拷貝,代數記錄塊是否存活。
  4. 定期進行完整的清理-複製,Java虛擬機進行監控,如果所有對象穩定,垃圾回收效率低下,進入“標記-清理”模式。Java虛擬機跟蹤“標記-清理”的效果,若碎片過多,進入“停止-複製”模式。這就是“自適應”技術。
  5. “自適應的、分代的、停止-複製、標記-清理”回收器
    6。 “即時”(Just-In-Time, JIT)編譯技術。將程序全部或者部分翻譯爲本地機器碼,提升運行速度。

Java SE5新特性

  1. 可變長度的參數列表
  2. enum關鍵字
發佈了39 篇原創文章 · 獲贊 4 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章