明確進行的靜態初始化

2021-07-27 08:56:51 字數 675 閱讀 9452

一、class cup

void fun(int marker)

}class cups

cups()

}public class property

static cups x = new cups();

static cups y = new cups();

結果:cup(1)

cup(2)

cups()

cups()

creating new cups in main

fun(99)

二、class cup

void fun(int marker)

}class cups

cups()

}public class property

//static cups x = new cups();

//static cups y = new cups();

}結果:

creating new cups in main

cup(1)

cup(2)

fun(99)

結論:static{} 雖然看起來像方法,實際只是static關鍵字,後面跟乙個方法主體,與其他static初始化一樣,這段**只執行一次,首次生成那個類時,或者首次訪問那個類的static方法或static變數。

靜態初始化和例項初始化

父類單獨的效果 當父類單獨執行時,靜態初始化塊優先執行,然後是例項初始化塊,最後才是構造器 子類單獨效果 首先執行父類的靜態初始化塊和子類的初始化塊 優先執行靜態 然後執行父類的例項初始化塊和構造器,最後執行子類的例項初始化塊和構造器 父類子類效果1 父在前子在後 先將父類的物件例項出來後,進行子類...

陣列 初始化 只含動態初始化 靜態初始化

首先j a中此處只講靜態初始化 動態初始化 靜態初始化就是提前在陣列中設定好了陣列內容,此內容不做改動,該多長已經在設定內容的時候已經決定 動態初始化就是僅限於new及確定陣列大小長度,裡面的陣列內容沒有,可自由進行填寫,也包含了靜態初始化的內容 示例 package 陣列 public class...

java的靜態初始化和動態初始化

package array public class array for int i 0 i 3 i system.out.println for int i 2 i 0 i system.out.println system.out.print b.length n 動態初始化 inta new ...