Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!
当前位置: 主页 > Java文档 > Java基础相关 >

Class(字节码)文件基础 PDF 下载


分享到:
时间:2020-12-17 20:12来源:http://www.java1234.com 作者:转载  侵权举报
Class(字节码)文件基础 PDF 下载
失效链接处理
Class(字节码)文件基础  PDF 下载

本站整理下载:
提取码:bavn 
 
 
相关截图:
 
主要内容:


1.Class文件基础
(1)文件格式
 
 Class文件的结构不像XML等描述语言那样松散自由。由于它没有任何分隔符号,
所以,以上数据项无论是顺序还是数量都是被严格限定的。哪个字节代表什么
含义,长度是多少,先后顺序如何,都不允许改变。
(2)数据类型
仔细观察上面的Class文件格式,可以看出Class文件格式采用一种类似于C语言
结构体的伪结构来存储,这种伪结构中只有两种数据类型:无符号数和表。
无符号数就是u1、u2、u4、u8来分别代表1个、2个、4个、8个字节。表是由
多个无符号数或其他表构成的复合数据类型,以“_info”结尾。在表开始位置,
通常会使用一个前置的容量计数器,因为表通常要描述数量不定的多个数据。
下图表示的就是Class文件格式中按顺序各个数据项的类型:
 s2eyc6qr
(3)兼容性
高版本的JDK能向下兼容以前版本的Class文件,但不能运行以后版本的Class文件,
即使文件格式未发生任何变化。举例来说,JDK 1.7中的JRE能够执行JDK 1.5编译
出的Class文件,但是JDK 1.7编译出来的Class文件不能被JDK 1.5使用。这就是
 target参数的用处,可以在使用JDK 1.7编译时指定-target 1.5。
2.一个简单的例子
package com.cdai.jvm.bytecode; public class ByteCodeSample { private String msg = "hello world"; public void say() { System.out.println(msg); } }


 

------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐