zoukankan      html  css  js  c++  java
  • 类加载器

    BootStrap ,ExtClassLoader,AppClassLoader
    第一个类加载器不是java类,正是BootStrap

    public class ClassLoaderTest{
    
        public static void main(String[] args){
                ClassLoader loader =ClassLoaderTest.class.getClassLoader().getClass().getName();
                loader.getParent();
            }
        }

    类加载器之间的父子关系和管辖范围图
    BootStrap ------JRE/lib/rt.jar

    ExtClassLoader----JRE/lib/ext/^.jar

    AppClassLoader---ClassPath指定的所有jar或者目录

    每个类加载器加载类时,又先委托给其上级类加载器
    便于统一管理字节码文件

    若一个类A依赖类B,类加载器加载类A,则类B也会由该类加载器加载

    模板方法设计模式
    父类->loadClass/findClass/得到class文件的转换成字节码-->defineClass()
    子类1 (自己干)
    子类2 (自己干)

    编写字节的类加载器
    1、自定义的类加载器的必须继承ClassLoader
    2、loadClass方法与findClass方法
    3、defineClass方法

  • 相关阅读:
    方法
    顺序结构 基本语句
    包,Doc
    运算符
    变量
    类型转换
    day7——JAVA数组
    day6——java方法
    day5——java流程控制
    day4
  • 原文地址:https://www.cnblogs.com/atomicbomb/p/6624380.html
Copyright © 2011-2022 走看看