長沙Java培訓:java中構造方法分享
本篇文章長沙Java培訓的千鋒講師將給大家講解java中構造方法。Java中構造方法不是靜態的,但是,構造方法做什么用,運行機制是什么,比知道這個答案更重要。
我們先從java的運行機制聊起。程序員編寫.java文件后通過jdk提供的javac工具進行編譯。編譯完成后生成.class字節碼文件,這個文件可以被jvm運行。jvm運行這個.class字節碼文件的時候,通過類加載器將字節碼中的指令存入到jvm開辟的內存中的方法區中,然后通過程序計數器配合執行引擎來執行剛加載進方法區中的這些指令。
那么我們知道了java的運行機制,接下來我們聊下類是怎么被加載的。
1.類加載時首先要校驗.class文件的正確性,也就是驗證這個.class文件是否是java程序。
2.其次,類加載器給類的靜態變量分配內存空間,并賦予默認值。
3.之后,類加載器裝入該類中引用的其他類
4.再之后,類加載器為之前分配的靜態賦指定值,并執行靜態代碼塊
我們發現,在類的加載過程中,靜態的部分被創建和執行了,但構造方法沒有被執行。那么我們可以得知,靜態的部分是早于構造方法執行的。那么,構造方法什么時候執行呢?
結合以上一、二大點,當類被加載完成后,在開始使用類的時候,程序計數器配合執行引擎來執行類的構造方法,創建類的對象。至此,我們了解了JVM的執行流程和類的加載過程,弄清楚了構造方法和靜態的區別。

猜你喜歡LIKE
最新文章NEW
相關推薦HOT
更多>>熱門推薦
零基礎必看的前端HTML+CSS教程
沸Java培訓新手實戰必備!單機版坦克大戰分步實現項目源碼
熱3種Javascript圖片預加載的方法詳解
熱長沙前端培訓:一招教你用vue3+canvas實現坦克大戰
新互聯網涼了?參加長沙Java培訓能找到工作嗎?
長沙Java培訓實戰項目,出游咨詢訂票系統開發流程
不參加長沙Java培訓能學會Java嗎?2022Java技能學習路線圖
千鋒長沙Java培訓分享之怎么學習Java集合?
千鋒長沙前端培訓分享之JavaScript面向對象編程思想詳解
千鋒長沙前端培訓分享之web前端的回流和重繪
千鋒長沙前端培訓分享之3種Javascript圖片預加載的方法詳解
千鋒長沙前端培訓分享之利用Jest測試React組件
千鋒長沙前端培訓分享之JavaScript中Slice的用例
千鋒長沙java培訓分享之Socket編程