1. 程式人生 > 其它 >第二課-Java虛擬機器(JVM)

第二課-Java虛擬機器(JVM)

介紹

  • 自動垃圾回收
  • 跨平臺

構成

  • 類載入器
  • 執行時記憶體空間
  • 垃圾回收器(GC)

類載入器

類載入過程

  1. 載入:使用到類時才會觸發載入,例如建立物件。載入階段會生成代表該類的java.lang.Class物件,作為方法區各個類訪問該類的入口。
  2. 驗證:校驗位元組碼的正確性。
  3. 準備:給類的靜態變數分配記憶體,並賦予預設值。注意,當被final修飾即常量時,會直接賦值為該常量值。
  4. 解析:將符號引用替換為直接引用。
  5. 初始化:
    1) 初始化階段是執行類構造器<clinit>()方法的過程。類構造器<clinit>()方法是由編譯器自動收集類中的所有類變數的賦值動作和靜態語句塊(static塊)中的語句合併產生的。
    2) 當初始化一個類的時候,如果發現其父類還沒有進行過初始化、則需要先觸發其父類的初始化。
    3) 虛擬機器會保證一個類的<clinit>()方法在多執行緒環境中被正確加鎖和同步。
    
  6. 使用:
  7. 解除安裝:
作者:Archer00 出處:https://www.cnblogs.com/archer00/p/15568033.html 宣告:文章如有問題請聯絡本人,侵權必刪,歡迎轉載,但請標明作者與出處