類載入過程

2022-08-20 07:30:13 字數 1130 閱讀 2401

類載入過程:

public

class

ssclass

}public

class superclass extends

ssclass

protected

static

int value=123;

public

superclass()

}/**

類載入過程:載入、驗證、準備、解析、初始化、使用、解除安裝

載入:根據全限定類名生成類的二進位制位元組流類資訊,並將其放到方法區

驗證:主要驗證二進位制位元組流是否符合當前虛擬機器的要求

準備:正式為類變數(不包括例項變數)分配記憶體並設定類變數初始值。如果沒有被final修飾的類變數則被初始化為0,null等;如果被final修飾,如

protected static final int value=123;則被初始化為123

解析:虛擬機器將常量池中的符號引用替換為直接引用

初始化:類載入過程的最後一步,將靜態變數(類變數)設定為給定值;執行靜態**塊中的**

使用:比如new,會呼叫建構函式 */

public

class subclass extends

superclass

public

subclass()

public

static

void

m1()

public

static

void

main(string args)

}輸出結果:

ssclass static

superclass static

subclass static

123111

0ssclass 建構函式

superclass 建構函式

subclass 建構函式

如果main()函式中什麼都不寫,則輸出如下:

ssclass static

superclass static

subclass static

類載入過程

類載入時機 1 new 靜態屬性,靜態方法呼叫 2 people.class 獲取class物件 3 載入子類時需提前載入父類 4 main函式所在的類需要載入 類載入器 也是一種類,可由其他類載入器載入 頂級父類載入器有c,c 寫成,不能由其他類載入器載入 載入類 雙親委派模型 從子類到父類依次查...

類載入過程

類從被載入到jvm中開始,到解除安裝為止,整個生命週期包括 載入 驗證 準備 解析 初始化 使用和解除安裝七個階段。其中類載入過程包括載入 驗證 準備 解析和初始化五個階段。鏈結階段要做的是將 載入到jvm 中的 二進位制位元組流 的類資料資訊 合併到jvm的執行時狀態中 經由驗證 準備和解析三個階...

Java 類載入過程

1 載入 載入的過程本質上是乙個讀取二進位制資料的過程。可以是檔案,網路資料,記憶體中的資料等,這一階段是可以自定義的。載入過程中會在堆中初始化乙個 class 物件。2 驗證 驗證就是驗證這堆二進位制資料是不是有效的,就是這個 class 資料是否可以載入虛擬機器。例如驗證檔案是否是 0xcafe...