
八股文
文章平均质量分 74
Wangwq.
这个作者很懒,什么都没留下…
展开
-
JVM --- 垃圾回收机制
前言: 1、JVM内存五大结构:方法区、Java堆、Java栈、本地方法栈、程序计数器 2、其中程序计数器、Java栈和本地方法栈三个区域是线程私有的,随线程启动和销毁。 3、Java堆、方法区这两部分内存的回收是动态的,是垃圾回收需要关注的。 一、判断对象是否存活 Java堆中存放着几乎所有的对象实例,垃圾回收器在进行垃圾回收前,要先判断这些对象是否存活,判断存活有以下方法: 1、引用计数法 (1)给对象增加一个引用计数器,每当有一个地方引用它时,计数器+1;当引用失效时,计数器-1;任何时刻计数器为0原创 2022-04-23 21:11:27 · 565 阅读 · 0 评论 -
JVM --- 类的生命周期
一、类的生命周期 加载-----》校验-----》准备-----》解析-----》初始化-----》使用-----》卸载 二、类加载过程 1、加载 (1)主要工作: 通过类的全限定名来获取定义此类的二进制字节流。 将这个类字节流代表的静态存储结构转换为方法区的运行时数据结构。 在堆中生成了一个代表此类的java.lang.Class对象,作为访问这些方法区的数据入口。 (2)支持的两种类加载器: 引导类加载器 用户(加载)自定义类加载器 2、校验 校验作为连接的第一步,用于确保类或接口在二进制表示结构上是正原创 2022-04-15 11:33:23 · 808 阅读 · 0 评论 -
JVM---内存管理
JVM是一种用于计算设备的规范,他是一个虚构的计算机。是通过在实际的计算机上的仿真模拟各种计算机的功能来实现的。 引入java虚拟机后,java语言在不同的平台上运行时不需要重新编译,运行字节码即可。 五大内存区域 1、方法区 (1)所有线程共享的内存区域 (2)用于存储已被虚拟机加载的类信息、常量、静态常量等。如:被static修饰的常量 (3)方法区中的信息来源于类装载子系统,其加载class信息 (4)这个区域的内存回收目标主要针对于常量池的回收和堆类型的卸载 2、Java堆 (1)是所有线程共享的内原创 2022-04-15 11:29:04 · 1228 阅读 · 0 评论