Person p=new Person("zhangsan",20);
該句話都做了什麼事情?
1.因爲new用到了Person.class。所以會先找到Person.class文件並加載到內存中。
2.執行該類中的static代碼塊,如果有的話,給Person.class進行初始化,
3.在堆內存中開闢空間,分配內存地址,
4.在堆內存中建立對象的特有屬性,並進行默認初始化
5.對屬性進行顯示初始化,
6.對對象進行構造代碼塊初始化,
7.對對象進行對應的構造函數初始化
8.將內存地址付給棧內存中的變量。