类加载器与jvm的内存

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

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

2. 类加载器的分类

应用类加载器:

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

系统类加载器:

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

自定义类加载器:

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

3. 类加载器的作用

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

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

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

相关推荐
HwJack2018 小时前
Flask+SQLite简易后端数据存储实现原理
jvm·sqlite·flask
Dicky-_-zhang18 小时前
Redis集群模式详解与实战配置
java·jvm
Kiling_070419 小时前
面向对象和集合编程题 ( 一 )
jvm·windows
上弦月-编程19 小时前
Java类与对象:编程核心解密
java·开发语言·jvm
Dicky-_-zhang19 小时前
线上故障排查与应急响应实战:从零开始建立你的SRE体系
java·jvm
大大杰哥19 小时前
从 Volatile 到 ThreadLocal:Java 线程安全机制备忘
java·开发语言·jvm
AI人工智能+电脑小能手19 小时前
【大白话说Java面试题 第67题】【JVM篇】第27题:生产环境服务器变慢,诊断思路和性能评估谈谈?
java·服务器·jvm·面试
Dicky-_-zhang20 小时前
服务网格Istio mTLS配置实战
java·jvm
Dicky-_-zhang20 小时前
服务网格实战:Istio与Linkerd对比选型与落地实践
java·jvm
存在的五月雨20 小时前
JVM 入门学习笔记(内存模型 / GC / 类加载机制)
jvm·笔记·学习