java虚拟机——虚拟机类加载机制

java虚拟机——虚拟机类加载机制

类加载机制:虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Jave类型。

类从被加载到虚拟机内存中开始,到卸载出内存为止,整个生命周期:
加载——连接(包括:验证、准备、解析)——初始化——使用——卸载

其它类加载过程都是按部就班的开始,但是解析阶段不一定:在某些情况下可以在初始化阶段之后开始,为了支持java语言的运行时绑定。

1、加载
加载阶段虚拟机需要完成3件事:通过一个类的全限定名来获取定义此类的二进制字节流;将这个字节流所代表的的静态存储结构转化为方法区的运行时数据结构;在内存中生成一个代表这个类的对象,作为方法区这个类的各种数据的访问入口。

2、验证
该阶段确保Class文件的字节流中包含的信息符合当前虚拟机的要求,并不会危害虚拟机自身的安全。
验证阶段主要完成4个验证动作:
(1)文件格式验证
如,魔数是否正确,是否有不被支持的常量
该阶段基于二进制字节流验证。之后的阶段会进入方法区。
(2)元数据验证
对类的元数据信息进行语义校验。如是否继承了final修饰的类
(3)字节码验证
确定程序语义是合法的、符合逻辑的。对类的方法体进行校验分析。
(4)符号引用验证
可通过描述符找到对应的类、字段等。

3、准备
正式为类变量分配内存并设置类变量初始值
类变量:被static修饰的变量。不包括实例变量
初始值:数据类型的零值,而不是程序中初始化的值

4、解析
虚拟机将常量池中的符号引用替换为直接引用

5、初始化
执行类构造器方法的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本系统的研发具有重大的意义,在安全性方面,用户使用浏览器访问网站时,采用注册和密码等相关的保护措施,提高系统的可靠性,维护用户的个人信息和财产的安全。在方便性方面,促进了校园失物招领网站的信息化建设,极大的方便了相关的工作人员对校园失物招领网站信息进行管理。 本系统主要通过使用Java语言编码设计系统功能,MySQL数据库管理数据,AJAX技术设计简洁的、友好的网址页面,然后在IDEA开发平台中,编写相关的Java代码文件,接着通过连接语言完成与数据库的搭建工作,再通过平台提供的Tomcat插件完成信息的交互,最后在浏览器中打开系统网址便可使用本系统。本系统的使用角色可以被分为用户和管理员,用户具有注册、查看信息、留言信息等功能,管理员具有修改用户信息,发布寻物启事等功能。 管理员可以选择任一浏览器打开网址,输入信息无误后,以管理员的身份行使相关的管理权限。管理员可以通过选择失物招领管理,管理相关的失物招领信息记录,比如进行查看失物招领信息标题,修改失物招领信息来源等操作。管理员可以通过选择公告管理,管理相关的公告信息记录,比如进行查看公告详情,删除错误的公告信息,发布公告等操作。管理员可以通过选择公告类型管理,管理相关的公告类型信息,比如查看所有公告类型,删除无用公告类型,修改公告类型,添加公告类型等操作。寻物启事管理页面,此页面提供给管理员的功能有:新增寻物启事,修改寻物启事,删除寻物启事。物品类型管理页面,此页面提供给管理员的功能有:新增物品类型,修改物品类型,删除物品类型。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值