更新時間:2023-08-31 來源:黑馬程序員 瀏覽量:
代碼塊是類的5大成分之一(成員變量、構(gòu)造器,方法,代碼塊,內(nèi)部類),定義在類中方法外。在Java類下,使用 { } 括起來的代碼被稱為代碼塊。
Java中的代碼塊分為靜態(tài)代碼塊和構(gòu)造代碼塊,具體介紹如下:靜態(tài)代碼塊:
格式:static{ }
特點(diǎn):需要通過static關(guān)鍵字修飾,隨著類的加載而加載,并且自動觸發(fā)、只執(zhí)行一次
使用場景:在類加載的時候做一些靜態(tài)數(shù)據(jù)初始化的操作,以便后續(xù)使用。
構(gòu)造代碼塊(了解,見的少):
格式:{ }
特點(diǎn):每次創(chuàng)建對象,調(diào)用構(gòu)造器執(zhí)行時,都會執(zhí)行該代碼塊中的代碼,并且在構(gòu)造器執(zhí)行前執(zhí)行
使用場景:初始化實(shí)例資源。
例如斗地主的游戲,在啟動游戲房間的時候,應(yīng)該提前準(zhǔn)備好54張牌,后續(xù)才可以直接使用這些牌數(shù)據(jù)。
該房間只需要一副牌。定義一個靜態(tài)的ArrayList集合存儲54張牌對象,靜態(tài)的集合只會加載一份。在啟動游戲房間前,應(yīng)該將54張牌初始化好。當(dāng)系統(tǒng)啟動的同時需要準(zhǔn)備好54張牌數(shù)據(jù),此時可以用靜態(tài)代碼塊完成。
如果要在啟動系統(tǒng)時對靜態(tài)資源進(jìn)行初始化,則建議使用靜態(tài)代碼塊完成數(shù)據(jù)的初始化操作。