黑馬程序員 初步瞭解內存的問題

---------------------- android培訓java培訓、期待與您交流! ----------------------
初步瞭解作用域問題 - xihayilv@126 - s的學習記錄

        在論壇裏也看到同學問過String s="abc"和String s=new String("abc")在內存中的情況,今天的視頻剛好學到這裏,整理幾個要點:
1、局部變量:定義在方法中、參數裏的變量,作用域是它所在的母括號{ }。
2、棧:凡是局部變量就存在棧裏,數據一旦用完就自動釋放。
3、堆:用來存實體(包括數組和對象),new出來的都在堆裏佔空間,每個數據有自己的地址,有默認初始化值(int默認0,double默認0.0,float默認0.0f,布爾型默認false)。
4、int[ ] arr = new int[4];  堆中佔用4格地址,首地址比如是0X0012,就把這個地址傳給棧裏的arr,所以arr能夠指向這個數組。
5、如果執行arr=null; 表示arr不再指向任何地方,也就是堆中那4格沒有引用數據,就會被虛擬機作爲垃圾清除,清除時間不確定。


--------------------- ASP.Net+Android+IOS開發.Net培訓、期待與您交流! ----------------------
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章