初始化塊和靜態初始化塊

2021-10-02 19:37:38 字數 1391 閱讀 4471

初始化塊的使用(變數,靜態變數,方法,靜態方法)

由圖可知變數沒問題

上面的方法不可行能否初始化靜態方法

嘗試使用初始化塊初始化構造方法

最後比較一下構造方法初始化,初始化塊初始化,靜態初始化塊初始化當中誰最先被初始化:

package staticinitializelump;

public class zerolump

//寫靜態方法

public static void print(float newlength)

//寫普通方法

public void show(float newlength)

//初始化塊初始化乙個變數

//靜態初始化塊初始化靜態變數

static

public static void main(string args)

}

執行結果如下:

使用靜態初始化塊為high賦值

使用初始化塊為weight賦值

通過構造方法為變數name賦值

name張三

weight30

high183.1

使用初始化塊為weight賦值

通過構造方法為變數name賦值

name張三

weight30

high183.1

183.1

通過上面的結果可以看到最先被初始化的是靜態初始化塊,然後是初始化塊,最後是構造方法,同時發現第二次生成例項物件的時候靜態初始化塊的類容沒有執行,說明靜態初始化塊只能初始化一次。

靜態初始化塊 初始化塊 構造方法

1.所有的靜態初始化塊都優先執行,其次才是非靜態的初始化塊和建構函式,它們的執行順序是 1 父類的靜態初始化塊 2 子類的靜態初始化塊 3 父類的初始化塊 4 父類的建構函式 5 子類的初始化塊 6 子類的建構函式 注意 1 此處的構造方法需要與自己的類名相同,2 靜態 初始化塊需要用 2.構造方法...

static靜態初始化塊

j a 中可以通過初始化塊進行資料賦值。如 在類的宣告中,可以包含多個初始化塊,當建立類的例項時,就會依次執行這些 塊。如果使用 static 修飾初始化塊,就稱為靜態初始化塊。需要特別注意 靜態初始化塊只在類載入時執行,且只會執行一次,同時靜態初始化塊只能給靜態變數賦值,不能初始化普通的成員變數。...

java中靜態初始化塊,例項初始化塊,建構函式區別

public class people public people string name param args public static void main string args 執行效果 new兩個例項,從執行結果可以看出,靜態變數和靜態初始化塊都是在類載入到系統時,載入到系統中,靜態初始化...