Java代码块的学习
生活随笔
收集整理的這篇文章主要介紹了
Java代码块的学习
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
普通代碼塊
在方法體中定義的代碼塊。
public static void main(String[] args) {{int i = 20;System.out.println(i);}System.out.println(i); // 訪問不到變量 i}構造代碼塊
1.在方法外定義的非靜態的代碼塊
2.先于構造方法執行。實際是先執行父類構造方法,接著執行實例級別的代碼塊,然后執行當前構造方法
3.每次創建對象時都會執行一次
靜態代碼塊
1.屬于類級別的代碼塊
2.類加載進內存時會執行唯一的一次,后面創建對象時不會再執行了
3.常用于對某些靜態資源進行初始化
4.靜態代碼塊先于構造代碼塊執行,而且還要先于父類構造方法執行
什么時候類才會加載進內存中?
答:一次創建對象時
同步代碼塊
使用 synchronized 關鍵字加上一個鎖對象來定義一段代碼,這就叫同步代碼塊。
代碼塊的執行順序
靜態代碼塊 → 父類構造方法 → 構造代碼塊 → 子類構造方法
總結
以上是生活随笔為你收集整理的Java代码块的学习的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 凭证式国债可以转让吗?
- 下一篇: Java的子类可以继承父类的静态变量和静