五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網 會員登陸 & 注冊

Java預習學習筆記6(動力節(jié)點版,含圖析與注釋):棧內存,堆內存、方法區(qū)內存,壓棧

2019-12-08 23:45 作者:詩書畫唱  | 我要投稿


Java把內存劃分成兩種:一種是棧內存,一種是堆內存。

在函數(shù)中定義的一些基本類型的變量和對象的引用變量都在函數(shù)的棧內存中分配。當在一段代碼塊定義一個變量時,Java就在棧中為這個變量分配內存空間,當超過變量的作用域后,Java會自動釋放掉為該變量所分配的內存空間,該內存空間可以立即被另作他用。


棧的優(yōu)勢是,存取速度比堆要快,僅次于寄存器,棧數(shù)據(jù)可以共享。但缺點是,存在棧中的數(shù)據(jù)大小與生存期必須是確定的,缺乏靈活性。棧中主要存放一些基本類型的變量(,int, short, long, byte, float, double, boolean, char)和對象句柄。棧有一個很重要的特殊性,就是存在棧中的數(shù)據(jù)可以共享。? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 棧:聲明對象時 給對象初始化 Student stu=

方法區(qū):存放代碼;靜態(tài)變量,靜態(tài)方法,字符串常量,(在堆內存中)

堆其他部分:給對象分布一個內存地址 new Student

內存地址中有普通變量和普通方法

給對象的變量賦值:首先找到對象賦指的內存地址,如果有字符串賦值會到方法區(qū)去找字符串

1 JVM (Java虛擬機)主要包括三塊內存空間。分別是:棧內存,堆內存、方法區(qū)內存


2.堆內存和方法區(qū)內存各有1個。一個線程,一個棧內存。

線程(英文:thread),臺灣地區(qū)譯為執(zhí)行緒(英文:thread of execution)、緒程,操作系統(tǒng)技術中的術語,是操作系統(tǒng)能夠進行運算調度的最小單位,它被包涵在進程之中,是行程中的實際運作單位。一條線程指的是進程中一個單一順序的控制流,一個進程中可以并行多個線程,每條線程并行執(zhí)行不同的任務。在Unix SystemV及SunOS中也被稱為輕量進程(lightweight processes),但輕量進程更多指內核線程(kernel thread),而把用戶線程(user thread)稱為線程。計算機科學術語,指運行中的程序的調度單位。[1]


3.方法調用的時候,該方法所需要的內存空間在棧內存中分配,稱為壓棧。方法執(zhí)行結束之后,該方法所屬的內存空間釋放,稱為彈棧。


4.棧中主要存儲的是方法體當中的局部變量

5.方法的代碼片段以及整個類的代碼片段都被存儲到方法區(qū)內存當中,在類加載的時候這些代碼片段會載入。


6、在程序執(zhí)行過程中使用new運算符創(chuàng)建的java對象,存儲在堆內存當中。對象內部有實例變量,所以實例變量存儲在堆內存當中。

Java預習學習筆記6(動力節(jié)點版,含圖析與注釋):棧內存,堆內存、方法區(qū)內存,壓棧的評論 (共 條)

分享到微博請遵守國家法律
密云县| 清流县| 太谷县| 大庆市| 鸡东县| 隆化县| 旺苍县| 秭归县| 祁连县| 泗洪县| 定州市| 商河县| 永安市| 罗田县| 修武县| 黑水县| 民县| 秦安县| 广丰县| 宜都市| 邛崃市| 黄石市| 金山区| 成武县| 高密市| 永仁县| 卓尼县| 湘乡市| 伊宁县| 惠州市| 鄯善县| 海淀区| 大关县| 承德县| 丰宁| 莲花县| 织金县| 怀仁县| 庆阳市| 长乐市| 锡林浩特市|