java之jvm加载器有几种?
在java的学习中,对于jvm模块我们会不断补充一些知识点,毕竟jvm是比较重要的一个组成部分。本篇围绕jvm加载器展开介绍,在加载类的时候,我们的加载器会逐个进行工作,在具体的加载器类型上,想必大家还不是很清楚。下面我们就java之jvm加载器的4中类型带来介绍。
1、Bootstrap ClassLoader (引导类加载器)
负责加载$JAVA_HOME中jre/lib/rt.jar里所有的class,由C++实现的核心库,也就是JVM调用每个系统的API实现系统功能,实现跨平台的主要模块,不是ClassLoader子类。开发者不能直接使用。
2、Extension ClassLoader (扩展类加载器)
负责加载java平台中扩展功能的一些jar包,包括$JAVA_HOME中jre/lib/*.jar或-Djava.ext.dirs指定目录下的jar包,开发者可以直接使用。
3、Application ClassLoader (应用加载)
负责记载classpath中指定的jar包及目录中class。根据需要,通过class的全限定名来加载类,可以通过classLoader.getSystemClassLoader()来获取它。
4、Custom ClassLoader (用户加载器)
属于应用程序根据自身需要自定义的ClassLoader,继承java.lang.classLoader类。如tomcat、jboss都会根据j2ee规范自行实现ClassLoader。
以上就是java之jvm加载器的4种类型,大家在使用类的时候,可以留意一下这些加载器的使用,并对它们能够做到简单的区分。更多Java学习指路: