java - 类的加载过程
2015-09-23 10:27
274 查看
当程序主动使用某个类时,如果该类还未被加载到内存中,系统会通过加载,连接,初始化三个步骤来对该类进行初始化,JVM将会连续完成这三个步骤,也把这三个步骤统称为类加载或类初始化。 类加载指的是将类Class文件读入内存,并为之创建一个java.lang.Class对象,也就是说程序使用任何类时,系统都会为之建立一个java.lang.Class对象。 类是某一类对象的抽象,类是概念层次的东西,但类也是一种对象,每个类是一批具有相同特征的对象的抽象,而系统中所有类,它们实际上也是对象,都是java.lang.Class的实例。 类的加载由类加载器完成,类加载器通常由JVM提供,这些类加载器也是所有程序运行的基础,JVM提供的这些类加载器通常被称为系统类加载器,开发者也可以通过继承ClassLoader基类来创建自己的类加载器。 通过使用不同的类加载器,可以从不同来源加载类的二进制数据,通常有如下几种来源:
1.从本地文件系统来加载Class文件,这是大部分实例程序的类加载方式
2从jar包中加载class文件,如JDBC编程时用到的数据库驱动类就是放在jar文件中,JVM可以从jar文件中直接加载该Class文件
3.通过网络加载class文件
4.把一个java源文件动态编译,并执行加载。
相关文章推荐
- JAB2完成Java bean到xml的相互转换
- Spring中 bean 的生命周期
- springMVC教程初级(四)Controller篇(结果、参数 )
- 反射注入失败的原因!
- Hibernate与Spring的事务管理
- Hibernate与Spring的事务管理
- js与java为float、double精确到固定位数
- Java各种工具下载
- Spring Security hello world example
- spring MVC配置详解
- Spring事务配置
- java编程习惯
- Google Java编程风格指南中文版
- java中过滤器、监听器、拦截器的区别
- Eclipse使用快捷键
- java复习-多线程
- Eclipse快捷键大全
- 基于xml的springMVC请求与数据返回
- Java对象的序列化和反序列化
- Java编程中静态内部类与同步类的写法示例