LawrencePeng's Blog

专注收集代码小精灵

用Go解析Java ByteCode

最近写了一个Java ByteCode的解析器,其实感觉ByteCode文件的结果非常简单,所以最后都是自动机的形式就可以了。后面我会用Go完成一个JVM。地址在我的go-jvm项目的classfile部分。贴一个ClassFile的结构

1
2
3
4
5
6
7
8
9
10
11
12
type ClassFile struct {
minorVersion uint16
majorVersion uint16
constantPool ConstantPool
accessFlags uint16
thisClass uint16
superClass uint16
interfaces []uint16
fields []*MemberInfo
methods []*MemberInfo
attributes []AttributeInfo
}