程序员-张三

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

在JVM中负责查找并装载类型的那部分被称为类装载器子系统。

java虚拟机中有种类装载器:启动类加载器,和用户自定义加载器 。前者是jvm实现的一部分,后者是java程序的一部分。由不同的类装载器的类将被放在虚拟机内部的不同命名空间。

   装载,链接以及初始化 类装载器子系统除了要定位导入二进制class文件外,还必须负责验证被导入类的正确性。为类变量分配并初始化内存,以及帮助解析符号引用。这些动作必须严格按以下顺序进行:

 1 装载 --查找并装载类型的二进制数据。

 2 链接 -- 执行验证,准备,以及解析。

     验证:确保被导入类的正确性

     准备:为类变量分配内存,并将其初始化。
     解析: 把类型中的符号引用转换直接引用。

3 初始化 把类变量初始化为正确初始值。

 启动类加载器: 只要符合java class文件格式的二进制文件。java虚拟机实现都必须能够从中辨别并装载其中的类和接口。(没个java虚拟机都必须有一个启动类装载器)

 

 

posted on 2012-02-20 16:53  程序员-张三  阅读(180)  评论(0编辑  收藏  举报