课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
类加载是程序员在学习java编程开发语言的时候需要重点掌握的一个编程知识点,下面我们就通过案例分析来了解一下,java编程类加载步骤。
类加载过程本质上就是类加载器根据类的全限定名称去找到对应的class字节码文件内容,然后将字节码文件的内容加载到虚拟机方法区中的过程。
所以我们大体上可以把类加载的过程分为三部分:
1、加载,就是获取到class文件的内容
2、链接,就是把相应的文件内容添加到虚拟机中,转变为虚拟机中的class对象,使虚拟机可以使用该类
3、初始化,初始化类对象的中的数据
而每个步骤更为详细的解释:
1、加载-根据全限定名称去寻找这个class的字节码文件内容,然后根据字节码中的内容翻译成jvm所熟知的class数据结构并保存到内存中。
注意这里的寻找字节码文件并不一定局限在传统的从磁盘中查找,而是非常灵活的,可以来自于db,来自于内存,来自于网络,甚至动态生成。
这里也为class文件的安全存储提供了保证。
2、验证-为了防止字节码文件存在恶意的信息,或者有伤害虚拟机的行为,因此需要对字节码文件的内容进行一个全面的校验。包括字节码的格式。语义、操作验证等。
3、准备-为类的静态变量分配内存并赋予对应的默认值。如int赋予0,对象赋予null,boolean赋予false等。
4、解析-将常量池中的符号引用转化为直接引用。也就是说将各种对象/方法的符号名称直接替换为方法区中的指针或者地址偏移量,以便直接调用该对象/方法。
5、初始化-会将所有的静态变量的值进行一遍初始赋值的操作。同时执行对应的静态初始化模块。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。