JAVA靜態塊和非靜態塊的區別

2021-05-10 14:02:25 字數 606 閱讀 8589

//靜態塊(static block):如下所示

public class staticblock1

public static void main(string args)

}/**靜態塊是在類被呼叫到記憶體後開始執行的,它和建立物件或main方法都沒有關係。

如果沒有

main

方法,程式仍然編譯成功,但執行錯誤。

上例中,執行結果為:static block

main*/

非靜態塊(

non-static block)

public class nonstaticblock1

nonstaticblock1()

public static void main(string args)

} /**

靜態塊一般用於初始化類中的靜態成員,而非靜態塊一般用於初始化類中的非靜態成員。

另外,非靜態塊是在建立物件時自動執行的**。

上例中,執行結果為:non static block

constructor

main

*/

JAVA靜態塊和非靜態塊的區別

靜態塊是在類被呼叫到記憶體後開始執行的,它和建立物件或main方法都沒有關係。如果沒有 main 方法,程式仍然編譯成功,但執行錯誤。靜態塊一般用於初始化類中的靜態成員,而非晶態塊一般用於初始化類中的非靜態成員。另外,非靜態塊是在建立物件時自動執行的 public class staticblock...

靜態塊與非靜態塊

在 中,有時候會遇到這種情況,static 以及不帶static的情況 public class staticblock 非靜態塊 public static void main string args 列印出來的結果是 這是靜態塊裡的內容!這是非靜態塊裡的內容!這是非靜態塊裡的內容!這是非靜態塊裡...

靜態塊(變數)和非靜態塊(變數)

package staticinit.one public class main1 class staticorinstance static public staticorinstance class mug public mug int i 注 1.在類初始化時,先初始化靜態塊或變數,再初始化非...