前端幾種常見適配方式的方法總結
阿新 • • 發佈:2021-07-10
類載入器
類載入
- 類的載入
- 類的連線
- 類的初始化
類載入器
-
作用:
-
負責將.class檔案載入到記憶體中,併為之生成對應的java.lang.Class 物件
-
JVM的內載入機制:
- 全盤負責
- 父類委託
- 快取機制
-
ClassLoader:負責載入類的物件
-
Bootstrap class loader 。 它是虛擬機器的內建類載入器,通常表示為null ,並且沒有父null
-
Platform class loader 。平臺類載入器可以看到所有平臺類 ,可以將其用作ClassLoader例項的父ClassLoader 。 平臺類包括由平臺類載入器或其祖先定義的Java SE平臺API,其實現類和JDK特定的執行時類。
-
System class loader 。 它也被稱為應用程式類載入器 ,與平臺類載入器不同。 系統類載入器通常用於定義應用程式類路徑,模組路徑和JDK特定工具上的類。 平臺類載入器是所有平臺類對其可見的系統類載入器的父級或祖先。
-
-
System的父類載入器為Platform,而PlatForm的父類載入器為Bootstrap
public static ClassLoader getSystemClassLoader()返回用於委派的系統類載入器。
public final ClassLoader getParent()返回父類載入器進行委派。
package com.reflect.classLoader; public class ClassLoaderDemo01 { public static void main(String[] args) { //public static ClassLoader getSystemClassLoader()返回用於委派的系統類載入器。 ClassLoader c = ClassLoader.getSystemClassLoader(); System.out.println(c);//AppClassLoader //public final ClassLoader getParent()返回父類載入器進行委派。 ClassLoader c2 = c.getParent(); System.out.println(c2);//ExtClassLoader ClassLoader c3 = c2.getParent(); System.out.println(c3);//null } }