类加载器与jvm的内存

1. 类加载器与内存的关系

类加载器的字节码放在方法区(元空间)中,同时类加载器加载类后类的信息(成员变量、成员方法及修饰符等)存放在方法区中。类的信息所占内存的回收要同时满足两个条件:类的实例被回收和类加载器被回收。

2. 类加载器的分类

应用类加载器:

加载应用中所有类(包括用户的类和框架类),生命周期和应用相同

系统类加载器:

加载系统级别的类(通常由系统本身管理),生命周期和系统同步

自定义类加载器:

加载自定义模块的类(如反射加载类时的自定义类加载器和插件化时自定义的类加载器)),开发者可以控制其生命周期

3. 类加载器的作用

加载类:从apk文件、dex文件或者文件系统中加载字节码

定义类:将类的架构转化成jvm可以识别的格式

实例化类:使用Class.forName()或者newInstance()等方法实例化类

相关推荐
Derek_Smart18 小时前
从一次 OOM 事故说起:打造生产级的 JVM 健康检查组件
java·jvm·spring boot
大道至简Edward1 天前
深入 JVM 核心:一文读懂 Class 文件结构(附 Hex 实战解析)
jvm
weisian1515 天前
JVM--20-面试题6:如何判断对象可以被垃圾回收?
jvm·可达性算法
蚊子码农5 天前
每日一题--JVM线程分析与死锁排查
jvm
xuxie995 天前
NEXT 1 进程2
java·开发语言·jvm
weisian1515 天前
JVM--19-面试题5:说说JVM的类加载机制和双亲委派模型
jvm·双亲委派模型·jvm类加载机制
亓才孓5 天前
【反射机制】
java·javascript·jvm
Volunteer Technology5 天前
JVM之性能优化
jvm·python·性能优化
Andy Dennis5 天前
Java语法注意事项
java·开发语言·jvm
坚持的小马5 天前
JVM相关笔记-jps
jvm·笔记