一.类加载器
1.根加载器,bootstrap,c++编写的;
2.扩展类加载器,java编写;
3.系统,应用类加载器,java编写;
4.用户自定义类加载器,java.lang.ClassLoader的子类,用户可以定制类的加载方式;
二. 类的加载方式
1.本地编译好的class中直接加载
2.网络加载:java.net.URLClassLoader可以加载url指定的类
3.从jar、zip等等压缩文件加载类,自动解析jar文件找到class文件去加载util类
4.从java源代码文件动态编译成为class文件
双亲委派模型
某个类接到类加载器的加载请求时,先将加载任务委托给父类加载器,依次递归,如果父类加载器能够完成加载任务,则成功返回,如果父类加载器不能加载,自己采取加载.