感谢原文作者:不将就!

原文链接:https://www.cnblogs.com/byron0918/p/5770653.html

类加载器负责将.class文件加载到内存中,并为之生成对应的Class对象。其中class文件有可能存在磁盘上,也有可能存在网络上。

当JVM启动时,会形成由三个类加载器组成的初始类加载器层次结构:



类加载机制:全盘负责和父类委托机制

全盘负责:就是当一个classloader加载一个Class的时候,这个class所依赖的和医用的其他class对象通常也由这个classloader负责载入。

委托机制:先让父类加载器寻找,只有在父类加载器找不到的情况下才从自己的类路径中去寻找。

类加载还采用了cache机制,如果cache中保存了这个class就直接返回它,如果没有才从文件中读取和转换成class,并存入cache,这就是为什么修改了class,但是必须重新启动JVM才能生效,并且类只加载一次的原因。

补充

https://blog.csdn.net/justloveyou_

最新文章

  1. ASP.NET MVC Bundle使用 合并压缩
  2. 利用Python进行数据分析(11) pandas基础: 层次化索引
  3. xdebug所有相关方法函数详解(中文翻译版)
  4. 利用Volley封装好的图片缓存处理加载图片
  5. 学习angular.js的一些笔记想法(上)
  6. div 一段时间后自动隐藏
  7. muduo库安装
  8. shell编程之echo命令
  9. Ubuntu下搭建java开发环境
  10. linux源代码阅读笔记 高速缓冲区管理
  11. 使用Delphi读取网络上的文本文件,html文件
  12. TatukGIS - GisDefs - CheckDir 函数
  13. KMP算法 KMP模式匹配 一(串)
  14. Putty是一个专业的SSH连接客户端
  15. 基于PaaS和SaaS研发的商业云平台实战 转 (今后所有的IT行业会持续集成,往虚拟化方向更快更深的发展,商业化才是这些技术的最终目的)
  16. 获取select选中的值
  17. 探究CSS中的包裹性
  18. 大数据量下的SQL Server数据库自身优化
  19. 错误 3 未找到类型“sdk:Label”。请确保不缺少程序集引用并且已生成所有引用的程序集。
  20. MongDB篇,第一章:数据库知识2

热门文章

  1. Defending Adversarial Attacks by Correcting logits
  2. Java初学者作业——定义客户类(Customer),客户类的属性包括:姓名、年龄、电话、余额、账号和密码;方法包括:付款。
  3. http协议的状态码400,401,403,404,500,502,503,301,302等常见网页错误代码
  4. Linux下设置普通用户使用sudo命令
  5. CF149D游戏
  6. .NET 云原生架构师训练营(模板方法 && 建造者)--学习笔记
  7. java字符串比较是否都可直接使用==?
  8. Appium安装部署
  9. 单例模式(python)
  10. Java复制文件用数据流方法,renameTO()方法是相当于剪切操作