【面试题精讲】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多平台发布

相关推荐
天上掉下来个程小白4 小时前
登录-10.Filter-登录校验过滤器
spring boot·后端·spring·filter·登录校验
SomeB1oody5 小时前
【Rust中级教程】2.8. API设计原则之灵活性(flexible) Pt.4:显式析构函数的问题及3种解决方案
开发语言·后端·性能优化·rust
Asthenia04125 小时前
Mybatis-Interceptor参数_Invocation解析——公共字段填充设计思路&&阿里规约
后端
Asthenia04127 小时前
基于 MyBatis PageHelper 自定义 PageUtil 的分页实践指南
后端
Hamm8 小时前
封装一个优雅的自定义的字典验证器,让API字典参数验证更湿滑
java·spring boot·后端
刘立军8 小时前
本地大模型编程实战(22)用langchain实现基于SQL数据构建问答系统(1)
人工智能·后端·llm
刘立军8 小时前
本地大模型编程实战(21)支持多参数检索的RAG(Retrieval Augmented Generation,检索增强生成)(5)
人工智能·后端·llm
m0_748250748 小时前
Spring Boot 多数据源解决方案:dynamic-datasource-spring-boot-starter 的奥秘(上)
java·spring boot·后端
总是学不会.11 小时前
EasyExcel 使用指南:基础操作与常见问题
java·开发语言·数据库·后端·mysql
️○-11 小时前
后端之JPA(EntityGraph+JsonView)
java·数据库·后端·数据库架构