首页 科普 资讯 养生 问答 找医院 相关问答
首页> 问答

面试官被欺负:new Object()到底占用几个字节?

发布网友 发布时间:2024-10-23 20:24

我来回答

1个回答

热心网友 时间:2024-11-01 12:34

面试官经常提出的一个刁钻问题:`new Object()`究竟占用多少字节?解答这个问题,首先需理解堆内布局及Java对象在内存中的布局。

通过下面的代码片段,我们可以观察到`obj1`与`obj2`在内存中的区别。`obj1`位于方法区,`obj2`则属于栈内存。

对象在内存中的布局分为三部分:对象头、实例数据及对齐填充。以64位操作系统为例(不考虑指针压缩),Java对象布局如下图所示。

对象头中包含的Mark Word,其详细信息在`synchronized`锁升级原理中有详述。对齐填充不是必须的,若对象头和实例数据总和为8字节的倍数,则无需填充。

了解Java内存模型后,我们回到问题本身:`new Object()`在内存中占用多少字节?以64位操作系统为例,`new Object()`的占用大小有两套情况。

进行验证,引入依赖,新建示例代码并输出结果。开启与关闭指针压缩,得到结果为16字节和16字节。这显示默认开启了指针压缩。

进一步,我们分析对象中包含属性时的大小。创建新类,内含byte属性。在开启与关闭指针压缩的场景下,分别输出类大小。开启指针压缩为16字节,关闭为24字节,显示了指针压缩的优势。

访问对象时,我们通常采用两种方式:句柄访问与直接指针访问。句柄访问在对象移动时更易于维护,直接指针访问则需修改指向。

Java堆内存按照对象的分代年龄划分,分为Young区与Old区。对象首先在Young区生成,达到一定年龄进入Old区。这种分代策略减少了一次完整堆内存扫描的需要,提高了性能。

Young区内存管理过程中,遇到空间不连续问题时,引入Eden区与Survivor区的双区策略,解决了空间不连续引发的GC问题。通过Eden区与Survivor区的循环复制,保证了内存的有效使用。

Old区用于存放分代年龄较高的对象,当Old区满时,触发Full GC。若清理空间仍不足,将抛出OutOfMemeoyError异常。

本文探讨了`new Object()`占用字节的问题,以及Java对象在内存中的布局、内存模型、堆内存分代、空间管理策略等。关于GC及GC算法等知识将在后续文章中深入分析。
每天晚上睡觉排气是胃癌前兆吗 EXCEL排序的数字只认第一个数字怎么办? 金属回收哪方面能有些折扣? 重庆发改委地址怎么没有了呢 重庆市发展和改革委员会主要职责 区级十五五规划 微信在哪删除使用过的小程序 小程序记录删除方法介绍 毡毯的意思是什么 毡毯是指什么 腰滑脱了怎么办? 电饭煲怎样用才能省时间 怎样使用自动电饭煲? 电饭煲的使用方法有什么呢? 使用电饭煲有哪些步骤呢? 沈阳市铁友绗缝机械设备厂(二)保温被绗缝机 蚕丝被大概多少钱一斤 杭州蚕丝被品牌 杭州蚕丝被厂家 杭州有哪些蚕丝被品牌【品牌库】_百... 浙江蚕丝被品牌 浙江蚕丝被厂家 浙江有哪些蚕丝被品牌【品牌库】_百... 什么情况下不适合使用创可贴? 棉絮哪个牌子好 ...品牌排行榜,蚕丝被十大名牌推荐_中国10大蚕丝被什么品牌的好_蚕丝... 微信公众号怎么开通微店 微信公众号开微店教程 龙虾蒸芋头的做法 5岁儿童有多少颗牙齿 5岁宝宝的恒牙为什么会长得过大? 5岁宝宝的恒牙为什么会长得小? 苹果11有耳机和充电器吗 研究生拟录取和录取有什么区别 vs2005 拒绝访问 是哪个服务 没开 ...运行库 (x64) 安装失败,错误消息如下: “拒绝访问。 ” 为什么需要为网站设置404页面? 一建报名提示需要人工核查 据媒体报道,国家大剧院竣工以来,全国30多个城市新建了投资在亿元级别的... 在北京有一周时间,该怎么安排时间? 大疆无人机限高120米怎么突破 佳木斯地区有哪些学校可以自考 佳木斯大学的成人本科学历怎么样 有增强wafi信号的吗!类似路由器的!情况是这样!我家在四楼!我们楼的二... 卫星锅接收的信号能不能用有限电视信号放大器给10个房间分配信号_百度... 无线控制器 盆景多久换一次盆 盆景更换盆的时间间隔 2011年安徽省宿州市上年度职工月工资平均标准是多少 行驶中epc灯亮怎么办 行驶过程中epc灯亮了一下又灭了 epc 发动机灯亮 开路上一直熄火 什么原因 Eos R5维修 听说原厂就是二阶? 大二报班可以考教师资格证吗 考教师资格证报班有哪些好处 考教师资格证有必要报班么 自考教师资格证和报班有什么区别? 什么是滑动式阻抗调谐器Tuner 100瓦led灯带耗电多少瓦 住顶楼旧房,墙面有掉皮和裂缝,可以直接刷三棵树的漆吗? led灯功率有多少瓦的 30瓦led灯多久一度电 30瓦LED灯一小时耗电几度? ...除了车贷以外就和白户没啥区别,没流水,没社保公积金,没信用卡... led灯30瓦耗电多少瓦 ...射洪·射江·射阳·射陂·射姑”的“射”4个读音, led功率是什么意思? ...望大家帮我推荐几只,另外,告诉我些买卖基金的注意事项 菜鸟想选一款基金定投,求大侠推荐,准备长期投,头一个熊牛市周期都可以... ...哪些性能是主要的区别??购买时要注意什么? 菜鸟提问,高人指点... 国家通过什么渠道救市 政府为什么老救市 国家为什么救市 ...股还忘了多少钱一股买的了,各位大哥,应该怎么才能查出来啊,急,_百 ... ...左右,想做一个理财计划,不知道哪位大侠能帮帮小弟,不胜感激... 菜鸟基金是什么意思啊? ...嘉实货币A基金怎么样?求高人给分析一下我是个菜鸟 我想入侵我们学校网站,我是菜鸟,而且系统是win7,我想一次解决,求高人指 ... win10系统重置后一直停留在1%怎么办? ...了“光电桅杆”这项先进技术否?如果装了具体说明。 功放dB是什么意思? dB代表什么? 有谁知道什么是滑动式阻抗调谐器Tuner 卧室玉器风水摆设-和田玉资讯 西瓜蓝莓汁怎么做既省时又好喝? 对讲机 450 470M k9对讲机说明书 motorola对讲机k9萤火版怎么进入编程状态 ...如何设计?入户处设计一个玄关?请各位帮帮忙。谢谢啦! 户型图玄关设置&鞋柜放置 入户玄关风水需要注意什么 不能不知的装修禁忌 铁路火车噪音影响了附近居民的正常生活,铁路部门违规吗 入户玄关为什么聚财 我单位用了上网行为管理路由器,不能看视频,不能用迅雷,但可以用QQ和... ...很难改变而已,下载QQ游戏非得要他QQ旋风,用迅雷还不让 干货!投资移民希腊,这些优劣势你必须要了解清楚! ...飞信、MSN、浏览器、硬盘版war3、迅雷、迅雷看看,全部打不开,但是UC... 非智能机可以边聊QQ边玩QQ游戏或者发短信吗?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com