Person p = new Person()都做了些什麼動作

創建一個對象都在內存中做了什麼事情?

1先將硬盤上指定位置的Person.class文件加載進內存。

2執行main方法時,在棧內存中開闢了main方法的空間(壓棧-進棧),然後在main方法的棧區分配了一個變量p。

3在堆內存中開闢一個實體空間,分配了一個內存首地址值。new

4在該實體空間中進行屬性的空間分配,並進行了默認初始化。

5對空間中的屬性進行顯示初始化。

6進行實體的構造代碼塊初始化。

7調用該實體對應的構造函數,進行構造函數初始化。()

8將首地址賦值給p ,p變量就引用了該實體。(指向了該對象)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章