Java基礎之普通代碼塊、構造代碼塊、靜態(tài)代碼塊、同步代碼塊

1、概念

  • 普通代碼塊:在方法或語句中出現(xiàn)的{}就稱為普通代碼塊。普通代碼塊和一般的語句執(zhí)行順序由他們在代碼中出現(xiàn)的次序決定--“先出現(xiàn)先執(zhí)行”;
  • 構造塊:直接在類中定義且沒有加static關鍵字的代碼塊稱為{}構造代碼塊。構造代碼塊在創(chuàng)建對象時被調用,每次創(chuàng)建對象都會被調用,并且構造代碼塊的執(zhí)行次序優(yōu)先于類構造函數(shù);
  • 靜態(tài)代碼塊:在java中使用static關鍵字聲明的代碼塊。靜態(tài)塊用于初始化類,為類的屬性初始化。每個靜態(tài)代碼塊只會執(zhí)行一次。由于JVM在加載類時會執(zhí)行靜態(tài)代碼塊,所以靜態(tài)代碼塊先于主方法執(zhí)行,如果類中包含多個靜態(tài)代碼塊,那么將按照"先定義的代碼先執(zhí)行,后定義的代碼后執(zhí)行";
  • 同步代碼塊:同步代碼塊主要出現(xiàn)在多線程中;

3、總結

注意:1 靜態(tài)代碼塊不能存在于任何方法體內(nèi)。2 靜態(tài)代碼塊不能直接訪問靜態(tài)實例變量(非static變量)和實例方法(非static方法),需要通過類的實例對象來訪問。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容