当前位置: 首页 > news >正文

做统计表的网站最新新闻热点事件2021年5月

做统计表的网站,最新新闻热点事件2021年5月,企业网站建设开发服务,上海突发新闻** 一、JVM体系结构 ** ** 二、class格式文件概述 ** class文件是一种8位字节的二进制流文件#xff0c; 各个数据项按顺序紧密的从前向后排列#xff0c; 相邻的项之间没有间隙#xff0c; 这样可以使得class文件非常紧凑#xff0c; 体积轻巧#xff0c; 可以被J…** 一、JVM体系结构 ** ** 二、class格式文件概述 ** class文件是一种8位字节的二进制流文件 各个数据项按顺序紧密的从前向后排列 相邻的项之间没有间隙 这样可以使得class文件非常紧凑 体积轻巧 可以被JVM快速的加载至内存 并且占据较少的内存空间。 我们的Java源文件 在被编译之后 每个类或者接口都单独占据一个class文件 并且类中的所有信息都会在class文件中有相应的描述 由于class文件很灵活 它甚至比Java源文件有着更强的描述能力。 class文件中的信息是一项一项排列的 每项数据都有它的固定长度 有的占一个字节 有的占两个字节 还有的占四个字节或8个字节 数据项的不同长度分别用u1, u2, u4, u8表示 分别表示一种数据项在class文件中占据一个字节 两个字节 4个字节和8个字节。 可以把u1, u2, u3, u4看做class文件数据项的“类型” 。 ** 三、class文件详细介绍 ** 3.1 魔数 在class文件开头的四个字节 存放着class文件的魔数 这个魔数是class文件的标志他是一个固定的值 0XCAFEBABE 。 也就是说他是判断一个文件是不是class格式的文件的标准 如果开头四个字节不是0XCAFEBABE 那么就说明它不是class文件 不能被JVM识别。 下面是一个class文件的二进制形式 3.2 主版本号和次版本号 紧接着魔数的四个字节是class文件的次版本号和主版本号。 随着Java的发展 class文件的格式也会做相应的变动。 版本号标志着class文件在什么时候 加入或改变了哪些特性。 举例来说 不同版本的javac编译器编译的class文件 版本号可能不同 而不同版本的JVM能识别的class文件的版本号也可能不同 一般情况下 高版本的JVM能识别低版本的javac编译器编译的class文件 而低版本的JVM不能识别高版本的javac编译器编译的class文件。 如果使用低版本的JVM执行高版本的class文件 JVM会抛出java.lang.UnsupportedClassVersionError。 如下图0034为主版本号对应的十进制数为50查看下面图可知50对应的是JDK1.6也就是说该class文件可被JDK1.6以上的虚拟机执行 3.3 class文件中的常量池 在class文件中 位于版本号后面的就是常量池相关的数据项。 常量池是class文件中的一项非常重要的数据。 常量池中存放了文字字符串 常量值 当前类的类名 字段名 方法名 各个字段和方法的描述符 对当前类的字段和方法的引用信息 当前类中对其他类的引用信息等等。 常量池中几乎包含类中的所有信息的描述 class文件中的很多其他部分都是对常量池中的数据项的引用比如后面要讲到的this_class, super_class, field_info, attribute_info等 另外字节码指令中也存在对常量池的引用 这个对常量池的引用当做字节码指令的一个操作数。 此外 常量池中各个项也会相互引用。 class文件中的项constant_pool_count的值为1, 说明每个类都只有一个常量池。 常量池中的数据也是一项一项的 没有间隙的依次排放。常量池中各个数据项通过索引来访问 有点类似于数组 只不过常量池中的第一项的索引为1, 而不为0, 如果class文件中的其他地方引用了索引为0的常量池项 就说明它不引用任何常量池项。class文件中的每一种数据项都有自己的类型 相同的道理常量池中的每一种数据项也有自己的类型。 常量池中的数据项的类型如下表 每个数据项叫做一个XXX_info项 比如 一个常量池中一个CONSTANT_Utf8类型的项 就是一个CONSTANT_Utf8_info 。除此之外 每个info项中都有一个标志值tag 这个标志值表明了这个常量池中的info项的类型是什么 从上面的表格中可以看出 一个CONSTANT_Utf8_info中的tag值为1 而一个CONSTANT_Fieldref_info中的tag值为9 。 JVM常量池中各数据项类型详解传送门 Java程序是动态链接的 在动态链接的实现中 常量池扮演者举足轻重的角色。 除了存放一些字面量之外 常量池中还存放着以下几种符号引用 1 类和接口的全限定名 2 字段的名称和描述符 3 方法的名称和描述符 在详细讲解常量池中的各个数据项之前 我们有必要先了解一下class文件中的特殊字符串 因为在常量池中 特殊字符串大量的出现这些特殊字符串就是上面说的全限定名和描述符。 要理解常量池中的各个数据项 必须先了解这些特殊字符串。 class文件中的特殊字符串 class文件中的特殊字符串介绍见这里传送门
http://wiki.neutronadmin.com/news/331809/

相关文章:

  • 深圳建站公司告诉你十个建站步骤厦门做个网站多少钱
  • 免费的网站软件山东网站排行
  • 做简历网站js模板网站
  • 源码屋整站源码内推网
  • 浙江华临建设集团有限公司网站婚纱网站建设目的
  • 南昌it制作电商网站的公司广州公司网站建设
  • 建设网站的文案范文棋牌类网站设计建设
  • 哪个网站可以做担保交易wordpress媒体库 扩容
  • tp5网站开发模板wordpress网站顶部加横幅
  • 如何做网站软件12380网站建设情况汇报
  • 安徽住房和城乡建设部网站嘉兴网站开发
  • 一键搭建网站如何做一个网站的功能吗
  • 建设银行官方网站诚聘英才频道互联网企业是什么意思
  • wordpress修改配置文件重庆网站搜索引擎seo
  • 易派客网站是谁做的wordpress收入
  • 如何给网站做脚本郑州做花店网站
  • 我想做个百度网站怎么做的怎么免费给网站做收录
  • 南阳网站排名优化广州住房公积金建设银行预约网站首页
  • 用ip的网站要备案吗学科专业建设思路和目标
  • 做网站如何选主机简阳seo排名优化培训
  • 中企动力 网站建设汽车网站制作模板
  • 公司门户网站模板网页设计与制作实训报告实训目的
  • 房产中介网站开发模板aspcms 生成网站地图
  • 做直播网站需要学什么软件什么是h5设计
  • 济南网站建设vashine去哪里投诉百度公司
  • 企业营销网站建设系统关于建设设计院公司网站的建议
  • 网站自然排名往后掉手机首页
  • 网站被取消备案2018做技术分享网站有前景吗
  • 大型网站设计方案如何在网站上做网盘
  • 云南房产网站建设网络营销方法有什么