下面給出的Java中Class Loader中的描述,哪些描述是正確的(C)
A Class Loader 沒有層次關系
B 所有類中的Class Loader都是 App Class Loader
C 通過class for name (String class Name)能夠動態加載一個類
D 不同的Class Loader 加載同一個Class文件,所得的類是相同的
拓展知識Class Loader 知識
(1)Class Loader基本概念
與C或C++編寫的程序不同,Java程序并不是一個可執行文件,而是由許多獨立的類文件組成的,每一個文件對應一個Java類。此外,這些類文件并非全部裝入內存,而是根據程序需要逐漸載入Class Loader是JVM實現的一部分,Class Loader包括bootstrap Class Loader,Class Loader在JVM運行的時候加載的Java核心的API,以滿足Java程序基本的需求,其中就包括用戶定義的Class Loader,這里所謂的用戶定義,是指通過Java程序實現的兩個Class Loader一個是Ext Class Loader,它的作用是用來加載Java擴展API,也就是/lib/ext中的類;第二個是App Class Loader,他是用來加載用戶機器上CLASSPATH設置目錄中的class的,通常在沒有制定CLASSLOADER的情況下,程序員自定義的類就由該Class Loader進行加載。
(2)Class Loader加載流程
當運行一個程序的時候,JVM啟動,運行bootstrap Class Loader,該Class Loader加載Java核心API,然后調用Ext Class Loader加載拓展API,然后App Class Loader加載CLASSPATH目錄下定義的Class,這就是一個程序基本的加載流程.
更多Java知識,Java視頻,Java教程盡在動力節點,關注動力節點微信,得一手Java面試題。