類的執行順序

2021-09-25 13:01:38 字數 654 閱讀 3535

靜態變數和靜態方法在類載入的時候執行

1、靜態塊優先執行載入 並且靜態塊之執行一次

2、非靜態塊或者非靜態變數其次載入

3、最後是構造器載入

如果某個物件出發執行了第乙個靜態塊

那麼其他所有的靜態塊都由此物件初始化執行

不要再靜態塊new物件

栗子:

public

class

employee

static

static

public

employee()

}

測試類

public

class

test

}

初始化塊執行了 被a裡面的bb執行

構造方法執行了

靜態初始化塊11執行了 被a執行

靜態初始化塊22執行了 被a執行

初始化塊執行了

構造方法執行了

初始化塊執行了

構造方法執行了

本文中只出現了兩個靜態塊的執行說明了 靜態**塊只執行一次

而兩個靜態**快相鄰輸出說明所有靜態塊只由第乙個new出來的物件執行

runtime OC類執行順序

一 runtime如何實現?oc這個語言盡可能的將一些決定從編譯器推遲到執行時,他會盡可能的動態處理事情,這意味著這個語言不僅需要乙個編譯器,還需要乙個執行時系統,使得這個語言得以執行。runtime簡稱執行時。就是系統在執行的時候的一些機制,其中最主要的是訊息機制。對於c語言,函式的呼叫在編譯的時...

java類執行順序

如果父類有靜態成員賦值或者靜態初始化塊,執行靜態成員賦值和靜態初始化塊 如果類有靜態成員賦值或者靜態初始化塊,執行靜態成員賦值和靜態初始化塊 將類的成員賦予初值 原始型別的成員的值為規定值,例如int型為0,float型為0.0f,boolean型為false 物件型別的初始值為null 如果構造方...

java類執行順序

先執行父類的靜態變數和靜態 塊,如果有初值為其賦值,沒有就賦值預設初始值 執行當前類的靜態變數和靜態 塊,如果有初值為其賦值,沒有就賦值預設初始值 執行當前類成員的預設賦值,int 0,boolean false等 執行當前類的構造方法,顯示或者掩式呼叫父類的構造方法,如果構造方法 塊中有this,...