【面试题精讲】JVM-类加载器-类加载器分类

有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top

首发博客地址

全网最细面试题手册,支持艾宾浩斯记忆法


类加载器的分类是指 Java 虚拟机中不同的类加载器,它们负责将 Java 类加载到内存中,并将其转换为 Java 对象。根据类加载器的来源和功能,可以将类加载器分为以下几种:

  • 启动类加载器:这是由 C/C++语言实现的,嵌套在 JVM 内部的类加载器。它用来加载 Java 的核心库,即 JAVAHOME/jre/lib 目录下的 jar 包,或者 sun.boot.class.path 系统属性所指定的路径下的类库。它是所有其他类加载器的父类加载器,但它并不继承自 java.lang.ClassLoader 类。
  • 扩展类加载器:这是由 Java 语言实现的,继承自 java.lang.ClassLoader 类。它用来加载扩展目录下的类库,即 JAVAHOME/jre/lib/ext 目录下的 jar 包,或者 java.ext.dirs 系统属性所指定的路径下的类库。它的父类加载器是启动类加载器。
  • 应用程序类加载器:这也是由 Java 语言实现的,继承自 java.lang.ClassLoader 类。它用来加载应用程序目录下的类库,即 classpath 或者 java.class.path 系统属性所指定的路径下的类库。它是程序中默认的类加载器,一般来说,Java 应用的类都是由它来完成加载。它的父类加载器是扩展类加载器。
  • 自定义类加载器:这是由用户自己编写的,继承自 java.lang.ClassLoader 或者其子类。它可以根据用户的特定需求来定制类的加载方式,例如从网络、数据库或者加密文件中加载类。它可以选择是否遵循双亲委派模型,即是否先让父类加载器尝试加载请求的类。

以上就是我对于类加载器的分类的回答,希望对你有所帮助。😊

源: 与必应的对话, 2023/10/24 (1) 「JVM 篇」类加载器的三种分类及双亲委派模式原理 .... zhuanlan.zhihu.com/p/187549718. (2) 类加载器的分类及关系 - CSDN 博客. blog.csdn.net/qq_33626996.... (3) 类加载器的分类 ClassLoader - 八度易飞 - 博客园. www.cnblogs.com/wenqidao/p/....

本文由mdnice多平台发布

相关推荐
子玖36 分钟前
go实现通过ip解析城市
后端·go
Java不加班43 分钟前
Java 后端定时任务实现方案与工程化指南
后端
心在飞扬1 小时前
RAG 进阶检索学习笔记
后端
Moment1 小时前
想要长期陪伴你的助理?先从部署一个 OpenClaw 开始 😍😍😍
前端·后端·github
Das1_1 小时前
【Golang 数据结构】Slice 底层机制
后端·go
得物技术1 小时前
深入剖析Spark UI界面:参数与界面详解|得物技术
大数据·后端·spark
古时的风筝1 小时前
花10 分钟时间,把终端改造成“生产力武器”:Ghostty + Yazi + Lazygit 配置全流程
前端·后端·程序员
Cache技术分享1 小时前
340. Java Stream API - 理解并行流的额外开销
前端·后端
初次攀爬者1 小时前
RocketMQ 消息可靠性保障与堆积处理
后端·消息队列·rocketmq