亚洲天堂一级片-亚洲天堂三区-亚洲天堂久久精品成人-亚洲天堂毛片-久久国产欧美日韩高清专区-久久国产欧美日韩精品免费

北大青鳥北京通州校區(qū):Java虛擬機介紹

文章來自北大青鳥北京通州校區(qū)學術部老師:

Java程序在運行時創(chuàng)建的所有類實例或數(shù)組都放在同一個堆中。而一個Java虛擬機實例中只有一個堆空間,因此所有線程都將共享這個堆。由于一個Java程序獨占一個Java虛擬機實例,因而每個Java程序都有自己的堆空間。

Java虛擬機有一條在堆中分配新對象的指令,卻沒有釋放內(nèi)存的指令,正如你無法用Java代碼去明確釋放一個對象一樣,字節(jié)碼指令也沒有對應的功能。虛擬機自己負責決定如何已經(jīng)合適釋放不在被運行的程序引用的對象所占據(jù)的內(nèi)存。程序本身不用去考慮何時需要回收對象所占用的內(nèi)存,通常,虛擬機把這個任務交給垃圾收集器。(北大青鳥北京通州校區(qū),軟件技術培訓)

垃圾回收

垃圾收集器的主要工作是自動回收不在被運行的程序所引用的對象所占用的內(nèi)存。此外,它也可能去移動那些還在使用的對象,以此減少堆碎片。

對象內(nèi)部表示

Java對象中包含的基本數(shù)據(jù)由它所屬的類及其所有超類聲明的實例變量組成。只有有一個對象引用,虛擬機就必須能夠快速定位對象實例的數(shù)據(jù)。另外,它必須能通過該對象引用訪問相應的類數(shù)據(jù)(存儲于方法區(qū)的類型信息),在對象中通常有一個指向方法區(qū)的指針。

對象引用可認為是一個本地指針。通過某種策略可由該指針找到實例數(shù)據(jù)以及class data。

有如下幾個理由要求虛擬機必須能夠通過對象引用得到類數(shù)據(jù)(class data):

1. 當程序在運行時需要轉(zhuǎn)換某個對象引用為另一種類型,虛擬機必須能檢查這種轉(zhuǎn)換是否被允許。被轉(zhuǎn)換的對象是否的確是被引用的對象或它的超類。

2. 當程序執(zhí)行 instanceof操作時,虛擬機也進行了同樣的檢查。(北大青鳥北京通州校區(qū),軟件技術培訓)

3. 在程序中調(diào)用某個實例方法時,虛擬機必須進行動態(tài)綁定。不能按照引用的類型(type of reference),而是按照對象的實際類。

因此,虛擬機必須再次通過對象的引用去訪問類數(shù)據(jù)。

北大青鳥北京通州校區(qū)

北大青鳥網(wǎng)上報名
北大青鳥招生簡章
主站蜘蛛池模板: 日本不卡一区在线 | 国产精品久久久久久久久久久威 | 亚洲综合伊人色一区 | 成年免费在线观看 | 男人的天堂在线精品视频 | 久久久免费视频播放 | 天天欲色成人综合网站 | 日韩在线资源 | 97在线视频精品 | 国产综合久久久久影院 | 2019天天操天天干天天透 | 一级毛片aaa片免费观看 | 一级毛片免费观看不卡视频 | 欧美亚洲影院 | 欧美黑粗特黄午夜大片 | 手机看片自拍日韩日韩高清 | 免费aⅴ在线 | 91香焦国产线观看看免费 | 老司机午夜精品网站在线观看 | 久久a热6| 成人免费视频社区 | 久久精品人人爽人人爽快 | 在线看毛片网站 | 日本精品视频在线播放 | 欧美成人aa | 欧美三级黄| 成人人免费夜夜视频观看 | aa大片成人免费网站 | 99久久久久国产精品免费 | 日本特黄特色视频 | 最新亚洲精品国自产在线 | 九色视频在线观看免费 | 精品国产_亚洲人成在线高清 | 免费观看情趣v视频网站 | 岛国毛片在线观看 | 亚洲免费在线视频播放 | 在线高清一级欧美精品 | 国产裸体美女视频全黄 | 久久久毛片 | 亚洲欧洲日产国码一级毛片 | 一级片在线观看视频 |