Java ClassLoader 分析
来源:互联网 发布:图片文字修改软件 编辑:程序博客网 时间:2024/05/22 07:45
先贴一段
Java基本结构
Java结构包括四个不同而又相关的部分:
Java语言、class文件格式、应用程序接口、虚拟机
其中,虚拟机的主要任务是在程序运行中需要的时候调用class文件并执行其中的字节码。一个Java应用有两种class loader:the system class loader 和 class loader objects。The primordial class loader 通常装载本地磁盘上包括Java API在内的信任类,它是虚拟机的一部分。在运行时,还可以定制class loader objects来加载其他,不是虚拟机的一部分,而是程序运行的一部分。
Class文件结构
Java class 文件的标志:开头四个字节为0xCAFEBABE
ClassLoader
ClassLoader 负责定位并导入class的二进制数据,并验证其正确性,分配初始化类成员变量的存储空间并初始化等等。所有的class loader都必须通过以下三个方法来完成以上任务。
protected final Class defineClass(String name,byte[] b, int off, int len,
ProtectionDomain protectionDomain)
throws ClassFormatError
将字节码转变为Class实例,这个实例必须经过解析才能够使用。
protected final Class findSystemClass(String name)
throws ClassNotFoundException
如果the primordial class loader已经加载成功此类,则返回其索引,否则抛出ClassNotFoundException。
protected final void resolveClass(Class c)
将类实例初始化
ClassFormatError
当虚拟机试图读取一个class文件发现文件格式错误或者不能被解析时抛出此错误
- Java ClassLoader 分析
- Java ClassLoader原理分析
- Java ClassLoader 原理分析
- Java Classloader原理分析
- Java Classloader原理分析
- Java的ClassLoader机制分析
- 深入分析Java ClassLoader原理
- 深入分析Java ClassLoader原理
- 深入分析Java ClassLoader原理
- 深入分析Java ClassLoader原理
- 深入分析Java ClassLoader原理
- 深入分析Java ClassLoader原理
- 深入分析Java ClassLoader原理
- 深入分析Java ClassLoader原理
- 深入分析Java ClassLoader原理
- 深入分析Java ClassLoader原理
- 深入分析Java ClassLoader原理
- 深入分析Java ClassLoader原理
- "Expected backup version 1..8. found @1"Firebird 数据库恢复错误解决
- silverlight中顺序/倒序异步加载多张图片
- log4j配置相对路径实现日志记录
- tomcat 打开SSL支持
- replica handbags
- Java ClassLoader 分析
- 浅谈测试Web程序的几大要点
- C++中的vector使用范例
- 工信部备案网站打不开的临时解决办法
- Android 2.2系统比2.1版性能高450%
- replica handbags
- How to detect "edit mode" in excel
- CodeIgniter系列 添加filter和helper
- 关于myeclipse新建jsp时pageEncoding的设置