類加載器的作用


  • 類加載的作用:將class文件字節碼內容加載到內存中,並將這些靜態數據轉換成方法區的運行時數據結構,然后在堆中生成一個代表這個類的java.lang.Class對象,作為方法區中類數據的訪問入口。
  • 類緩存:標准的JavaSE類加載器可以按要求查找類,但一旦某個類被加載到類加載器中,它將維持加載(緩存)一段時間,不過JVM垃圾回收機制(gc)可以回收這些Class對象。

  • JVM規范定義了如下類型的類的加載器
    •   引導類加載器(根加載器):用C++編寫,是JVM自帶的類加載器,負責java平台核心庫,用來裝載核心庫。該加載器無法直接獲取
    •   擴展類加載器:負責jre/lib/ext目錄下的jar包或-D java.ext.dirs 指定目錄下的jar包裝入工作庫
    •       系統類加載器:負責java -classpath或-D java.class.path所指的目錄下的類與jar包裝入工作,是最常用的加載器。

 

測試用例:
 
雙親委托機制:
簡單來說就是加載一個類進內存,先從系統類加載器找,往上從擴展類中找,往上再從根加載器中找。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM