java 類加載器和類加載方式

java 類加載器和類加載方式java

一 類加載器spa

一、Bootstrap Loader(啓動類加載器):加載System.getProperty("sun.boot.class.path")所指定的路徑或jar。命令行

二、Extended Loader(標準擴展類加載器ExtClassLoader):加載System.getProperty("java.ext.dirs")所指定的路徑或jar。在使用Java運行程序時,也能夠指定其搜索路徑,例如:java -Djava.ext.dirs=d:\projects\testproj\classes HelloWorldget

 

三、AppClass Loader(系統類加載器AppClassLoader):加載System.getProperty("java.class.path")所指定的路徑或jar。在使用Java運行程序時,也能夠加上-cp來覆蓋原有的Classpath設置,例如: java -cp ./lavasoft/classes HelloWorldclass

 

ExtClassLoader和AppClassLoader在JVM啓動後,會在JVM中保存一份,而且在程序運行中沒法改變其搜索路徑。若是想在運行時從其餘搜索路徑加載類,就要產生新的類加載器。

二 類加載方式test

類加載有三種方式:擴展

一、命令行啓動應用時候由JVM初始化加載搜索

二、經過Class.forName()方法動態加載程序

三、經過ClassLoader.loadClass()方法動態加載方法

相關文章
相關標籤/搜索