java类加载器作用:从磁盘、网络或其他来源加载class文件(字节码文件)加载到jvm内存中,并对字节码进行校验,解析和初始化,生成对应的Class对象。

\"\"

 

class文件(字节码文件)的来源有多种

  • jdk编译的class文件,先是用编辑工具(如eclipse)编写java代码;
  • Jar文件,原始jar包,包含了很多class文件;
  • 网络,可以从网络中加载class文件;
  • jsp,jsp编译后也是生成class文件;
  • 数据库中,保存在数据库中,可加密,安全性高;
  • 运行时计算生成,java动态代理技术;

 

JVM中类加载器的树状层次结构

  1. 启动类加载器(Bootstrap ClassLoader):C++实现,用来加载jre核心库;
  2. 扩展类加载器(Extendsion ClassLoader):用来加载java扩展类库,/lib/ext目录下;
  3. 应用程序类加载器(Application ClassLoader):加载用户类路径上的类,classpath;
  4. 自定义类加载器(custom class loader):开发人员可以通过继承 java.lang.ClassLoader类的方式实现自己的类加载器,以满足一些特殊的需求;
\"\"
网引图
收藏 打印
您的足迹: