jvm之类加载器
摘要:类加载过程:一个类被加载到虚拟机的整个生命过程将会经历,加载、验证、准备、解析、初始化、使用、卸载。这七个阶段,其中验证、准备、解析这三个阶段统称为linking。 类加载时机: 1.使用new 关键字实例化对象时。 2.遇java.lang.reflect包的方法对类型进行反射调用时,如果类型没有
阅读全文
posted @
2022-01-21 17:15
知一之一
阅读(42)
推荐(0) 编辑
jvm之运行时数据区
摘要:1.运行时数据区 线程共享区: 方法区(non-heap(非堆)):是一块独立于堆的内存空间,用于存储被虚拟机加载的类型信息、常量、静态变量、即时编译后的代码缓存等数据 堆(heap):用来存放对象实例 堆内存常用参数 线程独享区: 程序计数器:线程所执行的字节码的行号指示器,通过改变计数器的值来选
阅读全文
posted @
2022-01-13 17:59
知一之一
阅读(23)
推荐(0) 编辑
JVM之垃圾收集器
摘要:垃圾回收算法: 标记-清除:先标记后统一清除 缺点:1.执行效率不稳定(表现在假设Java堆中存在大量需要被回收对象,此时标记-清除操作执行效率随着对象的数量增加而降低)2.产生大量碎片化空间,导致内存不连续,无法为大对象分配空间。 标记-复制:将内存分为两块,每次只使用一块,当这块内存用完了,就将
阅读全文
posted @
2022-01-13 17:59
知一之一
阅读(40)
推荐(0) 编辑