带你分析字节码-深入理解class(一)

本文详细介绍了Java字节码的class文件结构,包括魔数、版本号、常量池等内容。通过实例分析了常量池中的类全限定名、字段和方法的名称及描述符,并探讨了不同常量类型的标志位和表结构。通过对字节码的深入理解,有助于提升对JVM工作原理的认识。
摘要由CSDN通过智能技术生成

class文件是编译器编译之后供虚拟机解释执行的二进制字节码文件,不只是java,
比如Groovy,JRuby,FANTOM,Jython,和Scala。这是在jvm上运行的5大脚本语言。下面就带你分析一个class的字节码文件,class文件只有无符号数和表两种基本的数据类型,u1,u2,u4,u8代表1个字节,2个字节,4个字节,8个字节的无符号数。表是由无符号数和表组合而成的结构,说表觉得不好理解的话,可以认为就是按照规定排列无符号数来描述的一种结构。
编译版本:jdk1.7
class打开工具:16进制编辑器winHex
编译代码:

import java.io.Serializable;


public class Amethod implements Serializable{
   
    private int j;
    public int 
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值