当前位置: 首页 > article >正文

java 类加载过程

java 的类加载采用双亲委派的方式

自下而上检查,该类是否已经加载
子类没有找父类

自顶向下进行实际的查找和加载,每个类加载器有自己的范围,没有的让子类找。
比如

bootstroop

加载lib/rt.jar charset.jar 的核心类,c++实现

extension

加载扩展jar包
jre/lib/*.jar,或由-Djava.ext.dirs 指定

App 加载classpath 指定的内容

custom Classload 自定义ClassLoad

大致流程图如下
在这里插入图片描述

如何自定义ClassLoad

ClassLoader l = new Test_Class();// 任何class
Class clazz = l.loadClass(com.play.jvm.hello);
clazz.m();

System.out.println(l.getClass().getClassLoader());
System.out.println(l.getParent());

在这里插入图片描述

这不就是反射吗 ,在tomcat 和热部署中经常用到


http://www.kler.cn/a/234517.html

相关文章:

  • Ai创作新风标!仅需三步,利用ai工具免费制作抖音爆款的动物融合视频(含完整的步骤)
  • AI生活之我用AI处理Excel表格
  • Python数据预处理
  • 计算机的错误计算(一百五十二)
  • 软考:去中心化的部署有什么特点
  • 修改Mysql 8 的密码
  • Vulnhub靶机:hacksudo-search
  • Java实现数据可视化的智慧河南大屏 JAVA+Vue+SpringBoot+MySQL
  • 踩坑实录(Second Day)
  • 789. 数的范围(二分模板)
  • ShardingSphere实现openGauss分布式架构
  • 夜天之书 #95 GreptimeDB 社群观察报告
  • 零代码3D可视化快速开发平台
  • 【射影几何15】python双曲几何工具geometry_tools
  • 【Opencv学习】04-图像加法
  • QGIS编译(跨平台编译)之四十九:cairo编译(Windows、Linux、MacOS环境下编译)
  • 基于springboot会员制医疗预约服务管理信息系统源码和论文
  • vue3学习——router-view 过渡动画
  • visual studio code could not establish connection to *: XHR failed
  • GreenSock Animation Platform(GSAP)动画库插件介绍
  • [C#] 如何使用ScottPlot.WPF在WPF桌面程序中绘制图表
  • Nginx配置php留档
  • C++ bool 布尔类型
  • opencv 图像色彩空间转化
  • 洛谷p4824 Censoring S
  • EMC学习笔记(二十四)降低EMI的PCB设计指南(四)