【java】之類加載機制
阿新 • • 發佈:2017-08-30
clas 網絡 技術分享 變量 下載 -s 效果 一個 引用
類加載:
類加載機制是指.class文件加載到jvm,並形成Class對象的機制,之後的應用就可對Class對象進行實例化並調用,類加載機制可在運行時動態加載外部的類,遠程網絡下載過來的class文件等,除了該動態化的優點外,還可通過jvm的類加載機制來達到類隔離的效果,例如Acclication server 中通常便面兩個應用的類互相幹擾。
jvm將類加載過程化為三個步驟,裝載,鏈接,初始化,裝載和鏈接完成之後,即將二進制的字節碼轉換為Class對象,初始化過程不是加載類時必須觸發的,但最遲必須在初次主動使用對象前執行,其所作的動作為給靜態變量賦值,調用<client>()等。
過程如下:
1、裝載(Load)
裝載過程負責找到二進制字節碼並加載到JVM中,JVM通過類的全限定名(com.luna.HelloWorld)及類加載器(ClassLoader A實例)完成類的加載,同樣,也采用以上兩個元素來標識一個被加載了的類:類的全限定名+ClassLoader實例ID。類名的命名方式如下:
對於接口或者是非數組的類,其名稱即為類名,此類型的類由所在的ClassLoader負責加載
對於數組型的類,其名稱為基本類型或L+引用類型名,例如:byte[] bytes=new byte[512],該bytes的類名為:Object[] objects=new Object[10],objects的
【java】之類加載機制