当前位置: 首页> 汽车> 报价 > 南京手机网站设计公司_十大网站建设公司排名_十大培训机构教育培训机构哪家好_沈阳百度seo关键词排名优化软件

南京手机网站设计公司_十大网站建设公司排名_十大培训机构教育培训机构哪家好_沈阳百度seo关键词排名优化软件

时间:2025/7/12 5:40:10来源:https://blog.csdn.net/m0_73864806/article/details/143724269 浏览次数: 0次
南京手机网站设计公司_十大网站建设公司排名_十大培训机构教育培训机构哪家好_沈阳百度seo关键词排名优化软件

类加载器是java虚拟机提供给应用程序去 实现获取类和接口字节码数据 的技术

类加载器的分类:

  • 一类是 Java代码中实现的
  • 一类是 Java虚拟机底层源代码实现的

通常可以细分为三大类:jdk8版本中的

  • java代码中的
    • 扩展类加载器:Extension 允许扩展Java中比较通常的类 (比较通用但是不特别重要)
    • 应用程序类加载器Application 加载应用所使用的类,还有一些第三方中jar包中的类
  • java虚拟机中的
    • 启动类加载器Bootstrap:加载java中最核心的类 比如String类

可以通过Arthas中的类加载器查看:

//使用下面的命令
$ classloader 

启动加载器

(Bootstrap ClassLoader)是由Hotspot虚拟机提供的、使用C++编写的类加载器。

默认加载Java安装目录/jre/lib下的类文件,比如rt.jar,tools.jar,resources.jar等。

  • 通过启动类加载器去加载用户的jar包:
    • 放入jre/lib下去进行扩展:
      • 不推荐,可能会出现即使放进去由于文件名不匹配的问题也不会正常的被加载。
    • 使用参数进行扩展:
      • 推荐,使用-Xbootclasspath/a:jar包目录/jar包名进行扩展

扩展类加载器+应用程序类加载器:

  • 扩展类加载器和应用程序加载器都是JDK中提供的,使用Java编写的类加载器
  • 他们的源码都位于sun.misc.Launcher中,是一个静态内部类。继承字URLClassLoader。具备通过目录或者指定jar包将字节码文件加载到内存中。

扩展类加载器:

  • 默认加载Java安装目录/jre/lib/ext下的类文件

通过扩展类加载器区加载用户jar包:

  • 放入/jre/lib/ext下进行扩展
  • 使用参数进行扩展
    • 推荐,使用-Djava.ext.dirs=jar包目录 进行扩展,这这种凡是会覆盖掉原始目录,可以用;(windows):(macos/linux)追加上原始目录。

双亲委派机制:

由于Java虚拟机中有多个类加载器,双亲委派机制的核心是解决一个类到底由谁加载的问题。

双亲委派机制的详细内容我会在下一篇文章介绍

关键字:南京手机网站设计公司_十大网站建设公司排名_十大培训机构教育培训机构哪家好_沈阳百度seo关键词排名优化软件

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: