JVM
文章平均质量分 96
。。
厄尔尼诺的夏天
热爱各有不同,青年本该如此,每一代逐日移山的青年,都有自己奋不顾身的热爱,每一份炽烈的热爱,都值得被用心对待
展开
-
JVM(三)类加载与字节码技术
目录三.类加载与字节码技术1.类文件结构2.字节码指令2.1 javap工具2.2 图解方法执行流程2.3 练习分析a++2.4 构造方法2.5 方法调用2.6多态的原理2.7异常处理2.8Synchronized3. 编译期处理(语法糖)4. 类加载阶段4.1 加载4.2 链接4.3 初始化5. 类加载器5.2 双亲委派模式5.3 自定义类加载器 6. 运行期优化6.1 分层编译6.2 方法内联6.3 反射优化7. java 内存模型 (JMM)7.1 原子性7.2 可见性7.3 有序性 7.4 happ原创 2022-07-08 17:17:15 · 488 阅读 · 0 评论 -
JVM(二)垃圾回收
目录7垃圾回收7.1判别对象可以回收7.1.1引用计数法7.1.2可达性分析算法7.1.3四种引用7.2垃圾回收算法7.2.1标记清除算法7.2.2标记整理算法7.2.3复制算法7.3分代垃圾回收7.3.1相关VM参数7.4垃圾回收器7.4.1串行垃圾回收器7.4.2吞吐量优先垃圾回收器7.4.3响应时间优先垃圾回收器7.4.4 G17.5垃圾回收调优7.5.1调优领域7.5.2确定目标7.5.3不发生GC最快7.5.4新生代调优7.5.5老年代调优7.5.6案例一个对象被另一个对象引用时,引用计数就会加1原创 2022-07-08 17:15:28 · 472 阅读 · 0 评论 -
JVM(一)内存结构
目录一.引言1.什么是JVM2.学习路线二.内存结构1.程序计数器1.1定义1.2作用2.虚拟机栈2.1定义2.2栈内存溢出(StackOverflowError)2.3线程运行诊断3.本地方法栈4.堆4.1定义4.2堆内存溢出(OutOfMemoryError)4.3堆内存诊断5.方法区5.1定义5.2组成5.3方法区内存溢出5.4运行时常量池5.5StringTable5.6StringTable特性5.7StringTable位置5.8StringTable垃圾收5.9StringTable性能调优6原创 2022-07-08 17:13:23 · 378 阅读 · 0 评论 -
JVM学习记录
目录一.引言1.什么是JVM2.学习路线二.内存结构1.程序计数器1.1定义1.2作用2.虚拟机栈2.1定义2.2栈内存溢出(StackOverflowError)2.3线程运行诊断3.本地方法栈4.堆4.1定义4.2堆内存溢出(OutOfMemoryError)4.3堆内存诊断5.方法区5.1定义5.2组成5.3方法区内存溢出5.4运行时常量池5.5StringTable5.6StringTable特性5.7StringTable位置5.8StringTable垃圾收5.9StringTable性能调优6原创 2022-02-18 17:21:23 · 1044 阅读 · 0 评论 -
JVM类加载
JVM类加载过程 当 Java 虚拟机将 Java 源码编译为字节码之后,虚拟机便可以将字节码读取进内存,从而进行解析、运行等整个过程,这个过程我们叫:Java 虚拟机的类加载机制。JVM 虚拟机执行 class 字节码的过程可以分为七个阶段:加载、验证、准备、解析、初始化、使用、卸载。 加载 加载阶段用一句话来说就是:把代码数据加载到内存中。这个过程对于我们解答这道问题没有直接的关系,但这是类加载机制的一个过程,所以必须要提一下。 验证 只有符合 JVM 字节码规范的文件才能被 JVM 正确执行转载 2022-03-01 11:18:29 · 309 阅读 · 0 评论