首先理解类加载器ClassLoader的开放性,第一阶段加载时让应用程序决定字节码的来源,可以来源于压缩文件jar、zip,也可以来源于网络、代理反射生成、jsp生成等。加载器分类:1、启动类加载器Bootstrap(加载java_home/lib),2、标准扩展类加载器Extension(加载java_home/lib/ext),3、AppClassLoader应用加载器,也叫系统加载器,将系统路径(classpath)中指定的类加载到内存中。4、自定义加载器。
双亲委派模型加载过程,当特定类加载器接到加载请求时,首先检查有没有加载过,如果没有加载过将加载任务委托给父类,依次递归,如果父类不能加载再由自己加载。这样可以保证类的唯一性。双亲委派并不是jvm强制标准是推荐标准。
转载请注明原文地址: https://www.6miu.com/read-2705.html