支付宝一面:一个 Java 对象到底有多大?被问傻眼了!!
Java专栏
共 4480字,需浏览 9分钟
· 2023-11-10
来源:http://blog.lichengwu.cn/
一个Java对象到底有多大?
Java对象结构
-
Object Header -
Class Pointer -
Fields
hash(25)+age(4)+lock(3)=32bit
unused(25+1)+hash(31)+age(4)+lock(3)=64bit
2024最新架构课程,对标培训机构
/**
* The value of the <code>Integer</code>.
*
* @serial
*/
private final int value;
4(object header)+4(pointer)+4(length)+4*10(10个int大小)=52byte 由于需要8位对齐,所以最终大小为`56byte`。
节约内存原则
1)尽量使用基本类型,而不是包装类型。
2)斟酌字段类型,在满足容量前提下,尽量用小字段。
/**
* The array buffer into which the elements of the ArrayList are stored.
* The capacity of the ArrayList is the length of this array buffer.
*/
private transient Object[] elementData;
/**
* The size of the ArrayList (the number of elements it contains).
*
* @serial
*/
private int size;
3)如果可能,尽量用数组,少用集合。
数组中是可以使用基本类型的,但是集合中只能放包装类型!
4)小技巧
-
时间用long/int表示,不用Date或者String。 -
短字符串如果能穷举或者转换成ascii表示,可以用long或者int表示。
总结
评论
使用 YOLO 进行自定义对象检测
点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达我们知道我们可以专门检测一些对象。那么我们如何训练系统检测自定义对象呢?让我们一步一步来。1. 创建数据集机器是通过数据集学习的。数据集必须包含图像和标签。例如,让我的目标是创建一个检测坦克的系统。我准备了从网上下载的坦克图片。然
小白学视觉
0
一个朋友
一个朋友,在深圳奋斗7年,和女友在去年合力在龙华买了一套房,总价600万,首付3成。但就在昨天,他们崩溃了。深圳推出可售型人才住房,就在他们新房附近,同样面积,总价不到400万,售价近乎腰斩。他们想不明白,同样是深圳人,买房人为什么都要被当成炒房客对待?二手房冰封,卖不出,新房不断打着,像极了上世纪
嵌入式Linux
0
私人影院 “美女陪侍” 被曝光!摸胸摸腿可外出…
在中国,我们都清楚黄赌毒一直是严打对象。尤其是那些涉黄活动,虽然禁止,但还是有人铤而走险。最近,长沙的一家私人影院被曝光涉及黄色事件。这到底怎么了?一个叫王某的消费者揭露了这一事件。他一直单身,看到影院推出的“恋爱体验”套餐就心动不已,结果去了之后发现踩空了,令人心寒。听说,基础服务要369元,包括
逆锋起笔
0
太敢穿了!透视纱裙!性感火辣的身材
绝了呀今天的厂花:吴宣仪1995年1月26日,吴宣仪出生于海南省海口市,中国内地流行乐女歌手、影视演员。2016年2月,吴宣仪随宇宙少女发行首张迷你专辑正式出道。2018年4月,她参加《创造101》综艺选秀,获得第二名,成功加入火箭少女101组合。吴宣仪的颜值一直备受称赞,她的五官立体精致,皮肤白皙
逆锋起笔
0
一女子与一男子在阳台上打扑克,被邻居偷拍后...
近日网络上又发生了一起疑似黄色谣言的事件:一女子与一男子在阳台上打扑克,被邻居偷拍后上传到网上,引发广泛舆论讨论。根据网传视频显示,一名穿着吊带睡衣的女子与一名光着上身的男性在阳台上交谈,随后开始打起扑克牌。这一幕被邻居拍下并上传至网络后,引发了许多网友的关注和猜测,其中大部分涉及到了不当的假设。当
逆锋起笔
0
老爸嘲讽我了,写破代码一年就挣十几万,他在工地带50个工人,一个月光人头费就3万,让我滚回去跟他干!
点击上方 "大数据肌肉猿"关注, 星标一起成长点击下方链接,进入高质量学习交流群今日更新| 1052个转型案例分享-大数据交流群来自:网络,侵删有个网友的父亲是做工程的,天天就嘲笑他,说他天天写着破代码有啥用,一年就拿个十多万的死工资,然后告诉他自己在工地里面带了50个工人,一个月能抽三万
程序源代码
0
豆瓣9.7,这部Java神作第3版重磅上市!
文末赠书Java 程序员们开年就有重磅好消息,《Effective Java 中文版(原书第 3 版)》要上市啦!该书的第1版出版于 2001 年,当时就在业界流传开来,受到广泛赞誉。时至今日,已热销近20年,本书第 3 版已是 Java 程序员的必读神书,被誉为“Java 四大名著之一”,甚至连
编码之外
0
测试新人,如何快速上手一个陌生的系统!
大家好,我是狂师!作为刚入行不久的测试新人,面对一个陌生的系统时,可能会感到有些手足无措。面对一个全新的系统系统,如何快速上手并展开有效的测试工作是一个重要的挑战。本文将探讨测试新人如何通过一系列步骤和策略,快速熟悉并掌握新系统的测试要点,从而提高测试效率和质量。本文旨在为测试新手提供一份指导,帮助
测试开发技术
0