javaSE
总得记点笔记
这个作者很懒,什么都没留下…
展开
-
JVM指针碰撞和空闲列表
以下是深入理解Java虚拟机第三版原话:假设Java堆中内存是绝对规整的,所有被使用过的内存都被放在一 边,空闲的内存被放在另一边,中间放着一个指针作为分界点的指示器,那所分配内存就仅仅是把那 个指针向空闲空间方向挪动一段与对象大小相等的距离,这种分配方式称为“指针碰撞”(Bump The Pointer)。自己话说就是如果内存完全连续,将已使用内存与未使用内存分开放到两边,中间是指针,每次使用多少内存,就将指针移动大小相等的距离。如下图以下是深入理解Java虚拟机第三版原话:但如果Java堆中的原创 2021-11-10 15:00:44 · 481 阅读 · 0 评论 -
String str = new String(“ab“); 创建了几个对象
String str = new String(“ab”); 创建了几个对象2个或者1个会先去字符串常量池查看是否有 “ab” 对象,没有则先在字符串常量池创建。然后再在堆中创建一个对象,返回引用给str。堆中String对象的char[] 指向字符串常量。...原创 2021-11-01 16:25:08 · 109 阅读 · 0 评论