细谈 对象的初始化过程------内存中的实现过程?
生活随笔
收集整理的這篇文章主要介紹了
细谈 对象的初始化过程------内存中的实现过程?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今天對于內存的理解 又加深了一步:
對下面代碼的理解:
[html]?view plaincopyprint?
內存圖解: ?上圖為證
? ? 總結:
內存是底層的真理! 如果,真正的理解了底層內存是怎么實現的,學任何一種語言都很簡單!
因為,你掌握了 金鑰匙!
下面是上面代碼的運行時 加載過程:
1 JVM 啟動類加載器,前篇介紹過!加載API 類庫和擴展類庫!之后加載我們程序中用的
類!例如: Demo7.class , person.class! ?
2 ?加載代碼中的 靜態代碼塊 static {} 對類 初始化
3 ?調用 Demo 中的 main 函數,進棧!
4 ?這個時候 Person ? ?p = new Person() ?
在 對內存中 開辟內存空間,
5 ?對堆中的成員變量進行 ?默認初始化
6 ?對堆中的成員變量進行 ?顯示初始化
7 ?執行構造 代碼塊! 對對象 初始化!
8 ?執行 構造方法!
9 ?將 對象的地址 賦值給 p! ?( 進棧! )
總結
以上是生活随笔為你收集整理的细谈 对象的初始化过程------内存中的实现过程?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深入研究Java类加载机制
- 下一篇: 深入理解Java:类加载机制及反射