![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java虚拟机
陌路逐风
这个作者很懒,什么都没留下…
展开
-
JVM类加载机制
类加载的过程 加载 通过一个类的全限定名来获取此类的二进制字节流 将静态存储结构转换为方法区的运行时数据结构 生成一个java.lang.class 对象,作为这个类的访问入口 验证 其实就是检查加载的 class 的正确性和安全性 准备 为类变量分配存储空间以及设置类变量初始值(附默认值) 解析 JVM 将常量池内的符号引用转换为直接引用 初始化 执行类变量的赋值 以及静态代码块 双亲委派...原创 2020-03-10 11:02:45 · 207 阅读 · 2 评论 -
JVM垃圾回收机制
序言 我们知道程序计数器,虚拟机栈,本地方法栈等三个区域随线程而生,随线程而灭。栈中的栈帧随着方法的进入和退出进行着入栈和出栈。每一个栈帧中分配多少内存基本在类结构确定下来时就已知了,因此这几个区域的内存分配和回收都具备确定性,那么在这几个区域就不用过多的考虑回收的问题。因为方法结束或者线程结束后,内存也会跟着回收。 而java堆和方法区则不一样,一个接口中的多个实现类需要的内存可能不一样,一个方...原创 2019-12-04 17:04:53 · 119 阅读 · 0 评论 -
java虚拟机运行时数据区域
概述:对于java程序员来说,在虚拟机自动内存管理机制的帮助下不再需要为每一个new操作去写配对的delete/free代码,不容易出现内存泄漏和内存溢出问题,由虚拟机管理内存,不过也正是因为java程序员把内存控制的权力交给了java虚拟机,一旦出现内存泄露和溢出方面的问题,如果不了解虚拟机是怎样使用内存的,那么排查错误将会成为一项异常艰难的工作。 运行时数据区域 程序计数器: 当前线程所执行的...原创 2019-12-02 16:58:14 · 164 阅读 · 0 评论