Java中怎么計算對象占用空間-創新互聯

這篇文章給大家介紹Java中怎么計算對象占用空間,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

成都創新互聯從2013年創立,是專業互聯網技術服務公司,擁有項目成都網站設計、網站建設網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元翁源做網站,已為上家服務,為翁源各地企業和個人服務,聯系電話:13518219792

對象頭

對象的頭部至少有兩個WORD,如果是數組的話,那么三個WORD,內容如下:

對象的HashCode,鎖信息等到對象類型數據的指針數組的長度(如果是數組的話)

規則

首先,任何對象都是8字節對齊,屬性按照[long,double]、[int,float]、[char,short]、[byte,boolean]、reference的順序存放,舉個例子:

publicclassTest{

bytea;

intb;

booleanc;

longd;

Objecte;

}

如果這個對象的屬性按照順序存放的話,要占用的空間為:head(8)+a(1)+padding(3)+b(4)+c(1)+padding(7)+d(8)+e(4)+padding(4)=40。但是按照這個規則得到:head(8)+d(8)+b(4)+a(1)+c(1)+padding(2)+e(4)+padding(4)=32??梢钥吹焦澥×瞬簧倏臻g。

在涉及繼承關系的時候有一個最基本的規則:首先存放父類中的成員,接著才是子類中的成員,舉個例子:

classA{

longa;

intb;

intc;

}

classBextendsA{

longd;

}

這樣存放的順序及占用空間如下:head(8)+a(8)+b(4)+c(4)+d(8)=32。那如果父類中的屬性不夠八個字節怎么辦?這樣就有了新的一條規則:父類中最后一個成員與子類的第一個成員的間隔如果不夠4個字節,此時需要擴展到4個字節的基本單位,舉個例子:

classA{

bytea;

}

classBextendsA{

byteb;

}

那么此時占用的空間如下:head(8)+a(1)+padding(3)+b(1)+padding(3)=16。顯然這種方式比較浪費空間,那么就有了:如果子類的第一個成員是double或者long,并且父類并沒有用完8個字節,JVM會破壞規將較小的數據填充到該空間,舉個例子:

classA{

bytea;

}

classBextendsA{

longb;

shortc;

byted;

}

此時占用的空間如下:head(8)+a(1)+padding(3)+c(2)+d(1)+padding(1)+b(8)=24。

關于Java中怎么計算對象占用空間就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

分享題目:Java中怎么計算對象占用空間-創新互聯
URL地址:http://m.kartarina.com/article28/cdcgcp.html

成都網站建設公司_創新互聯,為您提供網站內鏈、自適應網站、微信小程序、網頁設計公司、網站改版、網站建設

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

h5響應式網站建設
主站蜘蛛池模板: 亚洲中文字幕久久精品无码A| 中文字幕无码精品三级在线电影| 亚洲色在线无码国产精品不卡| 久久久久av无码免费网| 无码毛片内射白浆视频| 亚洲成a人片在线观看无码| 亚洲中文无码永久免费| 亚洲VA中文字幕无码一二三区 | 亚洲AV无码日韩AV无码导航| 久久久久亚洲av无码专区导航| 国产乱子伦精品免费无码专区| 人妻精品久久无码专区精东影业| 亚洲AV无码一区二区三区国产| 无码精品A∨在线观看| 国产亚洲情侣一区二区无码AV| 99久久人妻无码精品系列| 亚洲AV无码专区国产乱码电影| 久久久人妻精品无码一区| 国产莉萝无码AV在线播放| 久久精品国产亚洲AV无码偷窥| 无码精品人妻一区二区三区AV| 中文字幕亚洲精品无码| 日韩精品无码一区二区三区不卡| 亚洲人成无码网站久久99热国产| 日韩av片无码一区二区不卡电影| 亚洲国产精品无码久久久| 日韩AV无码久久一区二区| 无码一区二区三区免费| 久久亚洲精品中文字幕无码| 东京热人妻无码一区二区av| 亚洲日韩精品无码专区网站| av无码一区二区三区| 国产成人无码精品久久久久免费| 日韩av无码国产精品| 国产乱子伦精品免费无码专区| 伊人久久无码精品中文字幕| 无码免费又爽又高潮喷水的视频 | 亚洲AV无码成人精品区天堂| 一本色道久久HEZYO无码| 亚洲日韩精品无码一区二区三区| 亚洲最大av无码网址|