Java系核心技术
文章平均质量分 79
研究Java、多线程、网络编程、spring、spiringboot、字节码以及jvm等核心技术
_sunjinxin
issavior
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JVM字节码指令
注意 Short.MAX_VALUE 是 32767,所以 32768 = Short.MAX_VALUE + 1 实际是在编译期间计算好的。编译器会按从上至下的顺序,收集所有 {} 代码块和成员变量赋值的代码,形成新的构造方法,但原始构造方法内的代码总是在最后。编译器会按从上至下的顺序,收集所有 static 静态代码块和静态成员赋值的代码,合并为一个特殊的方。构造方法的字节码指令。比较 while 和 for 的字节码,你发现它们是一模一样的,殊途也能同归。传递参数,执行新栈帧中的字节码。原创 2023-03-21 14:00:38 · 342 阅读 · 0 评论 -
JVM垃圾回收
混合收集阶段:eden区进行垃圾回收,幸存下来的复制进幸存区,幸存区gc后的对象可能会复制进另外一个幸存区,当然,达到晋升条件的复制进老年代,老年代内存紧张时,一部分被gc,一部分复制进新的老年区域,因为G1是有暂停时间的,这个暂停时间可以通过。无需手动编码,但其内部配合引用队列使用,在垃圾回收时,终结器引用入队(被引用对象暂时没有被回收),再由 Finalizer 线程通过终结器引用找到被引用对象并调用它的 finalize方法,第二次 GC 时才能回收被引用对象。一般时候ratio可以设为19。原创 2023-03-21 14:02:14 · 173 阅读 · 0 评论 -
HashMap源码解读—Java8版本
人有两次生命,一次是出生,一次是觉醒,希望我们可以在风华正茂时重获新生,而不是在垂暮之年幡然醒悟。原创 2022-01-07 17:39:16 · 3875 阅读 · 112 评论 -
LinkedList源码解读—Java8版本
LinkedList是Collection下的一个list实现,就像ArrayList一样。和ArrayList不同的是它是链表结构,而ArrayList是顺序结构。原创 2022-01-06 16:36:10 · 2619 阅读 · 59 评论 -
ArrayList源码解读—Java8版本
ArrayList就是动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了动态的增加和减少元素。原创 2022-01-05 17:46:08 · 3489 阅读 · 4 评论
分享