摘要:
在JDK8中,HashMap的底层有数组+链表变为数组+链表+红黑树。主要是为了解决哈希冲突极端情况下的性能退化问题,同时也是一种防御性编程手段。 红黑树 红黑树有四大特征: 1.节点非黑即红。 2.根节点和叶子节点为黑色。 3.每个红色节点必须有两个黑色子节点。不能有两个连续的红色节点。 4.从任 阅读全文
posted @ 2026-01-30 09:22
acccccccccc
阅读(59)
评论(0)
推荐(1)
摘要:
volatile是Java并发编程中的轻量级同步机制,核心解决可见性和有序性的问题 三大特性 1.可见性:修改立即可见。 线程A修改了,线程B立即可见。 2.有序性:禁止指令重排。 代码执行的顺序就是执行顺序。 3.不保证原子性:符合操作仍可能出错。 i++这种操作仍需要sychornized或At 阅读全文
posted @ 2026-01-29 16:33
acccccccccc
阅读(97)
评论(2)
推荐(0)
摘要:
JVM内存结构 1.程序计数器(PCR)(线程私有) 记录当前线程执行位置(字节码指令的地址),确保线程切换后能恢复到正确位置。 2.堆(Heap)(线程共享) 堆是JVM内存中最大的一块,用于存储对象和数组。通过new关键字创建的对象都放在堆中, 堆中的对象需要考虑线程安全的问题,因为存在垃圾回收 阅读全文
posted @ 2026-01-29 09:08
acccccccccc
阅读(30)
评论(0)
推荐(0)
摘要:
1.堆内存分配 在Java的堆内存中,依据对象的生命周期可以将其分配为新生代和老年代, 这样分配是未了更好地进行垃圾回收和提高内存利用率。 1.新生代 新生代由Eden Space和两个Servivor Space组成 2.Eden Space(伊甸园) 伊甸园用于存放新建的对象,大部分对象在伊甸园 阅读全文
posted @ 2026-01-28 18:01
acccccccccc
阅读(38)
评论(0)
推荐(0)
浙公网安备 33010602011771号