JVM类加载机制

上面的类加载过程主要是通过类加载器来实现的,Java里有如下几种类加载器

  • 引导类加载器:负责加载支撑JVM运行的位于JRE的lib目录下的核心类库,比如rt.jar、charsets.jar等
  • 扩展类加载器:负责加载支撑JVM运行的位于JRE的lib目录下的ext扩展目录中的JAR类包
  • 应用程序类加载器:负责加载ClassPath路径下的类包,主要就是加载你自己写的那些类
  • 自定义加载器:负责加载用户自定义路径下的类包

JDK8以后废弃扩展类加载器(Extension ClassLoader)的原因

JDK8以后,使用平台类加载器(Platform ClassLoader)替换了原来的扩展类加载器(Extension ClassLoader)。有两个基本的原因归纳如下:

在JDK8中的这个Extension ClassLoader,主要用于加载jre环境下的lib下的ext下的jar包。当想要扩展Java的功能的时候,把jar包放到这个ext文件夹下。然而这样的做法并不安全,不提倡使用。

这种扩展机制被**JDK9开始加入的"模块化开发"**的天然的扩展能力所取代。

总之,扩展能力被取代了又不安全,所以被废弃。

相关推荐
丘山一郎3 小时前
Spring 中的IOC控制反转 和DI依赖注入
java·后端·spring
码视野3 小时前
基于 Spring Boot + Vue3 的【大学英语四六级 (CET-4/6) 作文智能评分与句式润色系统】设计与实现(含PRD/三端高保真源码/大屏)
java·前端·人工智能·spring boot·后端·vue3
MetaLite3 小时前
Spring-AOP自调用为什么失效-AopContext真能解决吗
java·后端·spring
大模型码小白3 小时前
AI 对话流性能调优:万级消息的虚拟滚动落地
java·大数据·前端·javascript·人工智能·算法·机器学习
许彰午3 小时前
14-字段级SM4加密与SM2签名
java·低代码·架构
数智启示录3 小时前
Flink CDC 机制精讲(二):Checkpoint Barrier 如何形成一致快照 【面试宝典】
大数据·经验分享·面试·flink
许彰午5 小时前
13-describe元数据输出
java·低代码·架构·状态模式
用户3721574261356 小时前
Java 设置 Word 文档编辑限制并允许指定区域编辑
java
宠友信息6 小时前
社区类源码开发实践中的仿小红书系统技术要点分析
java·spring boot·redis·mysql·uni-app·vue·内容运营
用户3721574261356 小时前
Java 设置 PDF 表单域只读或扁平化
java