首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

类加载器加载种的过程

2012-10-26 
类加载器加载类的过程(.class文件加载的过程)由(加载)和(定义)两步完成(加载)是loadClass()方法(定义)是de

类加载器加载类的过程

(.class文件加载的过程)由(加载)和(定义)两步完成
(加载)是loadClass()方法
(定义)是defineClass()方法

其中loadClass()中会调用defineClass()方法

每一个类加载器都有自己的控制区间(classpath)

过程:
(系统 类加载器)会最先loadClass()某一个.class文件,
然后在自己的loadClass()方法里调用父类加载器的loadClass()
求证.class文件是不是在父类加载器(扩展 类加载器)的控制范围之内
但(扩展 类加载器)没有求证就调用父类加载器的loadClass()
求证.class文件是不是在父类加载器(引导 类加载器)的控制范围之内
如果是则(引导 类加载器)调用defineClass()给出这个.class文件的Class类实力
如果不是则再问子类加载器(扩展 类加载器)是不是在其控制区域内
如果是则(扩展 类加载器)调用defineClass()给出这个.class文件的Class类实力
如果不是则再问子类加载器(系统 类加载器)是不是在其控制区域内
如果是则(系统 类加载器)调用defineClass()给出这个.class文件的Class类实力

所有被(定义)出来的Class类的实例会被缓存一段时间。

热点排行