Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ANewArray ¶
type ANewArray struct {
base.Index16Instruction
}
type AThrow ¶
type AThrow struct {
base.NoOperandsInstruction
}
type ArrayLength ¶
type ArrayLength struct {
base.NoOperandsInstruction
}
func (*ArrayLength) Execute ¶
func (this *ArrayLength) Execute(frame *rtda.Frame)
type CheckCast ¶
type CheckCast struct {
base.Index16Instruction
}
type GetField ¶
type GetField struct {
base.Index16Instruction
}
type GetStatic ¶
type GetStatic struct {
base.Index16Instruction
}
type InstanceOf ¶
type InstanceOf struct {
base.Index16Instruction
}
func (*InstanceOf) Execute ¶
func (this *InstanceOf) Execute(frame *rtda.Frame)
type InvokeInterface ¶
type InvokeInterface struct {
// contains filtered or unexported fields
}
func (*InvokeInterface) Execute ¶
func (this *InvokeInterface) Execute(frame *rtda.Frame)
func (*InvokeInterface) FetchOperands ¶
func (this *InvokeInterface) FetchOperands(reader *base.ByteCodeReader)
type InvokeSpecial ¶
type InvokeSpecial struct {
base.Index16Instruction
}
1. 实例的构造函数 2. 私有方法 3. super 调用父类函数
func (*InvokeSpecial) Execute ¶
func (this *InvokeSpecial) Execute(frame *rtda.Frame)
type InvokeStatic ¶
type InvokeStatic struct {
base.Index16Instruction
}
func (*InvokeStatic) Execute ¶
func (this *InvokeStatic) Execute(frame *rtda.Frame)
type InvokeVirtual ¶
type InvokeVirtual struct {
base.Index16Instruction
}
func (*InvokeVirtual) Execute ¶
func (this *InvokeVirtual) Execute(frame *rtda.Frame)
type New ¶
type New struct {
base.Index16Instruction
}
指令定义来源 The Java® Virtual Machine Specification https://docs.oracle.com/javase/specs/jvms/se8/jvms8.pdf
格式: new [indexbyte1] [indexbyte2] 字节: 0xbb 0x00 0x01
指令样例 8进制表示 指令含义 new 1 0xbb 0x00 0x01 使用当前类运行时常量池下标为 i 的地方的类符号引用,实例化一个新的对象,并将引用推送到操作数的栈顶
操作: 使用当前类运行时常量池下标为 <index> 的地方的类符号引用,实例化一个新的对象,并将引用推送到操作数的栈顶
type NewArray ¶
type NewArray struct {
// contains filtered or unexported fields
}
创建基本类型的数组
func (*NewArray) FetchOperands ¶
func (this *NewArray) FetchOperands(reader *base.ByteCodeReader)
type PutField ¶
type PutField struct {
base.Index16Instruction
}
Click to show internal directories.
Click to hide internal directories.